From 1f5636d69332170ea3a41c76c9519f6ff6f0a8d9 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期一, 28 十月 2019 15:40:30 +0800 Subject: [PATCH] 合并了代码 --- ZigbeeApp/Shared/Phone/Device/Curtain/RollerShadeControl.cs | 71 +++++++++++++++++++++++++++++++---- 1 files changed, 62 insertions(+), 9 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Curtain/RollerShadeControl.cs b/ZigbeeApp/Shared/Phone/Device/Curtain/RollerShadeControl.cs old mode 100644 new mode 100755 index 7474656..ded3c3d --- a/ZigbeeApp/Shared/Phone/Device/Curtain/RollerShadeControl.cs +++ b/ZigbeeApp/Shared/Phone/Device/Curtain/RollerShadeControl.cs @@ -107,21 +107,29 @@ { return; } - if ((common as Rollershade).DeviceStatusReport.CluterID == 258) + if (common.DeviceStatusReport.CluterID == 258) { - if ((common as Rollershade).DeviceStatusReport.AttriBute[0].AttributeId == 8) + if (common.DeviceStatusReport.AttriBute[0].AttributeId == 8) { //绐楀笜鐧惧垎姣� var rollerShade = deviceUI.CommonDevice as Rollershade; - rollerShade.DeviceStatusReport = (common as Rollershade).DeviceStatusReport; - rollerShade.WcdCurrentPositionLiftPercentage = (common as Rollershade).DeviceStatusReport.AttriBute[0].AttriButeData; + rollerShade.DeviceStatusReport = common.DeviceStatusReport; + rollerShade.WcdCurrentPositionLiftPercentage = common.DeviceStatusReport.AttriBute[0].AttriButeData; SeekBar.Progress = rollerShade.WcdCurrentPositionLiftPercentage; seekBarTitle.Text = $"{SeekBar.Progress} %"; rollerShade.LastDateTime = DateTime.Now; } + else if (common.DeviceStatusReport.AttriBute[0].AttributeId == 0) + { + //绐楀笜绫诲瀷 + var rollerShade = deviceUI.CommonDevice as Rollershade; + rollerShade.DeviceStatusReport = common.DeviceStatusReport; + rollerShade.WcdType = common.DeviceStatusReport.AttriBute[0].AttriButeData; + rollerShade.LastDateTime = DateTime.Now; + } } //***鏂版敼***璁惧鐘舵�佷笂鎶ヤ腑锛屽綋CluterID=3,璇佹槑璁惧鍦ㄧ嚎锛岀洿鎺ユ爣璁� - else if ((common as Rollershade).DeviceStatusReport.CluterID == 3) + else if (common.DeviceStatusReport.CluterID == 3) { var rollerShade = deviceUI.CommonDevice as Rollershade; rollerShade.IsOnline = 1; @@ -153,7 +161,7 @@ return; } var rollerShade = deviceUI.CommonDevice as Rollershade; - rollerShade.IsOnline = (common as Rollershade).IsOnline; + rollerShade.IsOnline = common.IsOnline; rollerShadeIMG.IsSelected = rollerShade.IsOnline == 1; rollerShade.LastDateTime = DateTime.Now; } @@ -176,8 +184,8 @@ /// Changeds the IS cene status. /// </summary> /// <param name="scene">Scene.</param> - public void ChangedISceneStatus(Scene scene) - { + public void ChangedISceneStatus(Scene scene) + { //throw new NotImplementedException(); } #endregion @@ -205,6 +213,7 @@ UserView.HomePage.Instance.ScrollEnabled = true; ZigBee.Device.ZbGateway.StatusList.Remove(this); action(); + action = null; RemoveUpdateControlDeviceStatuAction(); base.RemoveFromParent(); } @@ -433,7 +442,52 @@ { collectionBtn.IsSelected = true; } + + if (rollerShade.WcdType == -1) + { + CommonPage.Loading.Start(); + new System.Threading.Thread(() => + { + ZigBee.Device.Rollershade.ReadWcdTypeAction(rollerShade, () => + { + Application.RunOnMainThread(() => + { + if (rollerShade.WcdType == 0) + { + downBtn.UnSelectedImagePath = "WindowCovering/RollerShadeDown.png"; + downBtn.SelectedImagePath = "WindowCovering/RollerShadeDownSelected.png"; + upBtn.UnSelectedImagePath = "WindowCovering/RollerShadeUp.png"; + upBtn.SelectedImagePath = "WindowCovering/RollerShadeUpSelected.png"; + } + else + { + downBtn.UnSelectedImagePath = "WindowCovering/RollerShadeClose.png"; + downBtn.SelectedImagePath = "WindowCovering/RollerShadeCloseSelected.png"; + upBtn.UnSelectedImagePath = "WindowCovering/RollerShadeOpen.png"; + upBtn.SelectedImagePath = "WindowCovering/RollerShadeOpenSelected.png"; + } + CommonPage.Loading.Hide(); + }); + }); + }) + { IsBackground = true }.Start(); + } + else if(rollerShade.WcdType == 0) + { + downBtn.UnSelectedImagePath = "WindowCovering/RollerShadeDown.png"; + downBtn.SelectedImagePath = "WindowCovering/RollerShadeDownSelected.png"; + upBtn.UnSelectedImagePath = "WindowCovering/RollerShadeUp.png"; + upBtn.SelectedImagePath = "WindowCovering/RollerShadeUpSelected.png"; + } + else + { + downBtn.UnSelectedImagePath = "WindowCovering/RollerShadeClose.png"; + downBtn.SelectedImagePath = "WindowCovering/RollerShadeCloseSelected.png"; + upBtn.UnSelectedImagePath = "WindowCovering/RollerShadeOpen.png"; + upBtn.SelectedImagePath = "WindowCovering/RollerShadeOpenSelected.png"; + } #endregion + BindEvent(); } @@ -630,7 +684,6 @@ Shared.Common.Room.Lists[0].AddDevice(device.FileName); collectionBtn.IsSelected = true; } - action?.Invoke(); } #endregion -- Gitblit v1.8.0