using System; using Shared.Common; using ZigBee.Device; namespace Shared.Phone.UserCenter.DoorLock { public class MasterManagementPage : DoorLockCommonLayout, ZigBee.Common.IStatus { /// /// 构造函数 /// /// public MasterManagementPage(ZigBee.Device.DoorLock doorLock, Shared.Phone.UserCenter.MemberInfoRes accountObj) { this.doorLock = doorLock; this.accountObj = accountObj; BackgroundColor = Shared.Common.ZigbeeColor.Current.GXCTopViewBackgroundColor; } #region ◆ 变量申明__________________________ ZigBee.Device.DoorLock doorLock; Shared.Phone.UserCenter.MemberInfoRes accountObj; #endregion /// /// UI显示 /// public void Show() { string accountTitle = ""; if (accountObj.UserName != null) { accountTitle = accountObj.UserName; } else { accountTitle = accountObj.Account; } this.TopFrameLayout(this, accountTitle); EventHandler eHandlerBack = (sender, e) => { RemoveFromParent(); }; this.btnBack.MouseUpEventHandler += eHandlerBack; this.btnBackFrameLayout.MouseUpEventHandler += eHandlerBack; this.MidFrameLayout(this); MidFrameLayoutContent(); } public void MidFrameLayoutContent() { var bodyView = new VerticalRefreshLayout() { }; this.midFrameLayout.AddChidren(bodyView); bodyView.BeginHeaderRefreshingAction += async () => { bodyView.BeginHeaderRefreshing(); await Shared.Phone.UserCenter.DoorLock.DoorLockCommonInfo.GetDoorLockAllAcountUserlist(doorLock); bodyView.EndHeaderRefreshing(); }; for (int i = 0; i < 2; i++) { var RowView = new FrameLayout() { Height = Application.GetRealHeight(127 + 23), BackgroundColor = Shared.Common.ZigbeeColor.Current.XMWhite, }; bodyView.AddChidren(RowView); var btnMemberName = new Button() { X = Application.GetRealWidth(58), Y = Application.GetRealHeight(58), Width = Application.GetRealWidth(743), Height = Application.GetRealHeight(58), TextColor = Shared.Common.ZigbeeColor.Current.XMBlack, TextAlignment = TextAlignment.CenterLeft, TextSize = 14, }; RowView.AddChidren(btnMemberName); var btnRight = new Button() { X = Application.GetRealWidth(58 + 899), Y = Application.GetRealHeight(58), Height = Application.GetRealHeight(58), Width = Application.GetRealWidth(58), UnSelectedImagePath = "Item/Next.png", SelectedImagePath = "Item/Down.png", }; RowView.AddChidren(btnRight); var line2 = new Button() { Y = RowView.Height - 1, X = Application.GetRealWidth(58), Width = Application.GetRealWidth(965), Height = 1, BackgroundColor = Shared.Common.ZigbeeColor.Current.XMRowLine, }; RowView.AddChidren(line2); int currentIndex = i; if (i == 0) { btnMemberName.Text = Language.StringByID(R.MyInternationalizationString.LockMethod); } else { btnMemberName.Text = Language.StringByID(R.MyInternationalizationString.LinkageEvent); line2.Visible = false; } EventHandler eHandler = (sender, e) => { if (currentIndex == 0) { var unLockMethod = new Shared.Phone.UserCenter.DoorLock.UnLockMethod(doorLock, accountObj); Shared.Phone.UserView.HomePage.Instance.AddChidren(unLockMethod); Shared.Phone.UserView.HomePage.Instance.PageIndex += 1; unLockMethod.Show(); } else { ///备注:WJC的 ///记录当前用户信息 Phone.Device.Logic.Send.UserMemberInfoRes = accountObj; Phone.Device.Logic.Send.CurrentDoorLock = doorLock; if (accountObj == null) { ///防止抛异常 Phone.Device.Logic.Send.UserMemberInfoRes = new MemberInfoRes(); } if (doorLock == null) { ///防止抛异常 Phone.Device.Logic.Send.CurrentDoorLock = new ZigBee.Device.DoorLock(); } ///进来刷新一次设备列表; Common.Logic.LogicDviceList.Clear(); if (Common.Logic.LogicDviceList.Count == 0) { Common.Logic.LogicDviceList.AddRange(LocalDevice.Current.listAllDevice.ToArray()); } var doorLockLogicList = new Phone.Device.Logic.DoorLockLogic.LockLogicList(); UserView.HomePage.Instance.AddChidren(doorLockLogicList); UserView.HomePage.Instance.PageIndex += 1; doorLockLogicList.Show(); } }; btnRight.MouseUpEventHandler += eHandler; RowView.MouseUpEventHandler += eHandler; btnMemberName.MouseUpEventHandler += eHandler; } } #region ◆ 接口实现__________________________ /// /// 处理变化事件 --将弃用 改用DeviceInfoChange() /// /// The changed. /// Common. public void Changed(CommonDevice common) { } /// /// 处理变化事件 /// /// /// public void DeviceInfoChange(CommonDevice common, string typeTag) { } /// /// Changeds the IL ogic status. /// /// Logic. public void ChangedILogicStatus(ZigBee.Device.Logic logic) { } /// /// Changeds the IS cene status. /// /// Scene. public void ChangedISceneStatus(Scene scene) { } #endregion } }