using System; using Shared.Common; namespace Shared.Phone.Device.CommonForm { public class LeftIconButtonRow: FrameLayout { #region ◆ 变量__________________________ /// /// 图片 /// public Button IconButton; /// /// 标题 /// public Button TitleButton; /// /// 下划线 /// public FrameLayout Line; /// /// 点击事件 /// public Action ButtonClickEvent; /// /// ClickBtn /// public Button ClickBtn; /// /// v_Selected /// private bool v_Selected; public bool IsSelected { set { v_Selected = value; try { SetStatu(v_Selected); } catch { }; } get { return v_Selected; } } #endregion public LeftIconButtonRow(int width = 449, int height = 150, int x = 0, int y = 0) { X = x; Y = y; Width = Application.GetRealWidth(width); Height = Application.GetRealHeight(height); } #region ◆ 初始化__________________________ /// /// Init /// /// Icon path. /// Icon selected path. /// Title. public void Init(string iconPath, string iconSelectedPath, string title, bool hadLine = true) { IconButton = new Button() { X = Application.GetRealWidth(80), Height = UserCenter.HdlControlLogic.Current.GetPictrueRealSize(80), Width = UserCenter.HdlControlLogic.Current.GetPictrueRealSize(80), UnSelectedImagePath = iconPath, SelectedImagePath = iconSelectedPath, Gravity = Gravity.CenterVertical, Tag = this.Tag }; AddChidren(IconButton); TitleButton = new Button() { X = Application.GetRealWidth(173), Height = Application.GetRealHeight(80), Width = Application.GetRealWidth(220), TextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor, SelectedTextColor = ZigbeeColor.Current.GXCTextBlackColor, Text = title, TextAlignment = TextAlignment.CenterLeft, Gravity = Gravity.CenterVertical, Tag = this.Tag, TextSize=14 }; AddChidren(TitleButton); Line = new FrameLayout() { X = Application.GetRealWidth(80), Y = this.Height - 1, Width = Application.GetRealWidth(369), Height = 1, BackgroundColor = Common.ZigbeeColor.Current.GXCGrayLineColor2 }; if (hadLine) { AddChidren(Line); } IconButton.MouseUpEventHandler += Button_MouseUpEventHandler; TitleButton.MouseUpEventHandler += Button_MouseUpEventHandler; } #endregion #region ◆ 选中状态__________________________ /// /// 设置状态 /// /// private void SetStatu(bool statu) { IconButton.IsSelected = statu; TitleButton.IsSelected = statu; TitleButton.IsBold = statu; } /// /// 选中 /// public void SetSelectedStatu() { SetStatu(true); } /// /// 不选中 /// public void SetUnSelectedStatu() { SetStatu(false); } /// /// HidenLine /// /// public void HidenLine(bool statu) { Line.Visible = !statu; } /// /// 设置标题颜色 /// /// /// public void SetTitleColor(uint color,uint selectedColor) { TitleButton.TextColor = color; TitleButton.SelectedTextColor = selectedColor; } #endregion #region ◆ 点击事件_________________________ /// /// 点击事件 /// /// /// private void Button_MouseUpEventHandler(object sender, MouseEventArgs e) { try { this.ButtonClickEvent?.Invoke(this, e); } catch (Exception ex) { } } #endregion } }