From a7ab4b610972e20753dfedb3e5d80e4d9f017d07 Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期五, 14 八月 2020 10:39:08 +0800 Subject: [PATCH] 临时备份,测试1 --- ZigbeeApp/Shared/Phone/MainPage/HomeMainPageForm.cs | 65 ++++++++++++++++++++++++++++---- 1 files changed, 56 insertions(+), 9 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/MainPage/HomeMainPageForm.cs b/ZigbeeApp/Shared/Phone/MainPage/HomeMainPageForm.cs index 910c837..bd885f9 100755 --- a/ZigbeeApp/Shared/Phone/MainPage/HomeMainPageForm.cs +++ b/ZigbeeApp/Shared/Phone/MainPage/HomeMainPageForm.cs @@ -85,6 +85,8 @@ this.AddNormalDeviceReportEvent(); //娣诲姞浼犳劅鍣ㄧ姸鎬佷笂鎶ヤ簨浠� this.AddSensorDeviceReportEvent(); + //寮�鍚紶鎰熷櫒鐘舵�佽繕鍘熺殑绾跨▼ + this.StartRecoverSenorStatuThread(); } /// <summary> @@ -159,7 +161,7 @@ btnHouseName.TextColor = ZigbeeColor.Current.GXCTextDeepBlackColor; btnHouseName.IsBold = true; btnHouseName.Text = Config.Instance.Home.Name; - btnHouseName.Width = btnHouseName.GetRealWidthByText(); + btnHouseName.Width = btnHouseName.GetRealWidthByText() + Application.GetRealWidth(100); this.listBodyContr.frameTable.AddChidren(btnHouseName); //鍒囨崲浣忓畢 @@ -544,8 +546,8 @@ bodyFrameLayout.RemoveAll(); bodyFrameLayout.Height = Application.GetRealHeight(750); this.listBodyContr.RecoverTableHeight(); - this.dicSceneCardControl.Clear(); - this.dicDeviceCardControl.Clear(); + this.dicSceneCardControl = new Dictionary<int, Controls.SceneCardControl>(); + this.dicDeviceCardControl = new Dictionary<string, Controls.DeviceCardCommon>(); var listDevice = new List<CommonDevice>(); foreach (var mainkeys in HdlRoomLogic.Current.NowMainPageRoom.ListDevice) @@ -625,6 +627,11 @@ else if (device.Type == DeviceType.FreshAir) { cardContr = new Controls.DeviceFreshAirCardControl(); + } + // PM2.5 + else if (device.Type == DeviceType.PMSensor) + { + cardContr = new Controls.DevicePmSensorCardControl(); } //褰╃伅(璋冨厜鍣�) else if (device.Type == DeviceType.DimmableLight) @@ -804,8 +811,8 @@ bodyFrameLayout.RemoveAll(); bodyFrameLayout.Height = Application.GetRealHeight(750); this.listBodyContr.RecoverTableHeight(); - this.dicSceneCardControl.Clear(); - this.dicDeviceCardControl.Clear(); + this.dicSceneCardControl = new Dictionary<int, Controls.SceneCardControl>(); + this.dicDeviceCardControl = new Dictionary<string, Controls.DeviceCardCommon>(); var listScene = new List<SceneUI>(); foreach (int sceneId in HdlRoomLogic.Current.NowMainPageRoom.ListSceneId) @@ -1066,13 +1073,15 @@ this.ShowProgressBar(); //鍒囨崲浣忓畢 - HdlResidenceLogic.Current.SwitchResidence(home.Id); + var result = HdlResidenceLogic.Current.SwitchResidence(home.Id); HdlThreadLogic.Current.RunMain(() => { - //鍒锋柊鐣岄潰 - this.ShowForm(); - + if (result == true) + { + //鍒锋柊鐣岄潰 + this.ShowForm(); + } this.CloseProgressBar(); }); }); @@ -1161,6 +1170,44 @@ #endregion + #region 鈻� 浼犳劅鍣ㄧ姸鎬佽繕鍘焈____________________ + + /// <summary> + /// 寮�鍚紶鎰熷櫒鐘舵�佽繕鍘熺殑绾跨▼ + /// </summary> + private void StartRecoverSenorStatuThread() + { + HdlThreadLogic.Current.RunThread(() => + { + while (this.Parent != null) + { + try + { + var dicControl = this.dicDeviceCardControl; + foreach (var contr in dicControl.Values) + { + //濡傛灉鏄紶鎰熷櫒,鍒欏埛鏂扮姸鎬� + if (contr.device.Type == DeviceType.IASZone && contr.Parent != null + && ((IASZone)contr.device).iASInfo == null) + { + HdlThreadLogic.Current.RunMain(() => + { + //璁惧鐘舵�佸繀椤诲埛鏂� + string statuText = HdlDeviceOtherLogic.Current.GetDeviceStatu(contr.device); + contr.SetDeviceStatuText(statuText); + + }, ShowErrorMode.NO); + } + } + System.Threading.Thread.Sleep(8000); + } + catch { System.Threading.Thread.Sleep(3000); } + } + }); + } + + #endregion + #region 鈻� 鍒囨崲妤煎眰___________________________ /// <summary> -- Gitblit v1.8.0