using Shared; using System; using System.Collections.Generic; using System.Text; namespace HDL_ON.Stan { /// /// FrameLayout的最初原型 /// public class FrameLayoutBase : FrameLayout { #region ■ 变量声明___________________________ /// /// 设置能否触点击事件 /// public bool CanClick = true; /// /// 声明此变量,旨在子线程也能够去获取一个控件的主键 /// public string MainKey = string.Empty; /// /// 控件的点击事件(自定义封装事件,此事件被认可为执行按钮按下事件,受CanClick属性控制) /// public Action ButtonClickEvent = null; #endregion #region ■ 初始化_____________________________ /// /// FrameLayout的最初原型 /// public FrameLayoutBase() { //点击事件 this.MouseUpEventHandler += ButtonBase_MouseUpEventHandler; } #endregion #region ■ 点击事件___________________________ /// /// 点击事件 /// /// /// private void ButtonBase_MouseUpEventHandler(object sender, MouseEventArgs e) { if (ButtonClickEvent == null) { this.MouseUpEventHandler -= ButtonBase_MouseUpEventHandler; return; } if (CanClick == true) { try { this.ButtonClickEvent(this, e); } catch (Exception ex) { //出现未知错误 HdlMessageLogic.Current.ShowAppProgramIsError(ex); } } } #endregion #region ■ 一般方法___________________________ /// /// 计算图片的真实高宽度 /// /// /// public int GetPictrueRealSize(int i_size) { return Application.GetRealWidth(i_size); } /// /// 控件摧毁 /// public override void RemoveFromParent() { ButtonClickEvent = null; if (this.Parent != null) { base.RemoveFromParent(); } } /// /// ☆☆移除全部控件☆☆ /// public override void RemoveAll() { if (this.Parent != null) { base.RemoveAll(); } } #endregion } }