ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide | 补丁 | 查看 | 原始文档 | blame | 历史 | |
ZigbeeApp/Shared/Common/ZigbeeColor.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ZigbeeApp/Shared/DLL/Android/Shared.Droid.HDLWidget.dll | 补丁 | 查看 | 原始文档 | blame | 历史 | |
ZigbeeApp/Shared/DLL/Android/Shared.Droid.Smartrefresh.dll | 补丁 | 查看 | 原始文档 | blame | 历史 | |
ZigbeeApp/Shared/DLL/Android/Shared.Droid.dll | 补丁 | 查看 | 原始文档 | blame | 历史 | |
ZigbeeApp/Shared/Phone/Device/AC/ACControl.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ZigbeeApp/Shared/Phone/Device/Category/Category.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ZigbeeApp/Shared/Phone/UserCenter/Abount/SLAForm.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ZigbeeApp/Shared/Phone/UserView/UserPage.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml
@@ -7,7 +7,7 @@ <File FileName="Shared/R.cs" Line="955" Column="22" /> <File FileName="GateWay.Droid/Assets/Language.ini" /> <File FileName="Shared/Phone/Device/Category/Category.cs" /> <File FileName="Shared/Phone/Device/AC/ACControl.cs" Line="1" Column="1" /> <File FileName="Shared/Phone/Device/AC/ACControl.cs" Line="540" Column="14" /> <File FileName="Shared/Phone/UserView/UserHomeView.cs" /> <File FileName="Shared/Phone/Device/DeviceLogic/ReadDeviceAttributeLogic.cs" /> <File FileName="Shared/Phone/UserView/UserPage.cs" /> @@ -30,7 +30,6 @@ </Node> <Node name="Category" expanded="True" /> <Node name="CommonForm" expanded="True" /> <Node name="DeviceLogic" expanded="True" /> <Node name="Light" expanded="True" /> <Node name="Room" expanded="True" /> </Node> @@ -39,6 +38,9 @@ <Node name="CommonBase" expanded="True"> <Node name="Logic" expanded="True" /> </Node> <Node name="Device" expanded="True"> <Node name="PirSensor" expanded="True" /> </Node> </Node> <Node name="UserView" expanded="True" /> <Node name="ZigBee" expanded="True"> ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ideBinary files differ
ZigbeeApp/Shared/Common/ZigbeeColor.cs
@@ -254,48 +254,23 @@ /// 0xFFF5F5F5 /// </summary> public uint GXCSeekBarBackground = 0xFFF5F5F5; public uint GXCTextBlueColor = 0xFF00AAF0; public uint GXCBorderRedColor = 0xFFF44D4D; public uint GXCButtonBlueColor = 0xFF00AAF0; public uint GXCButtonUnselectedColor = 0xFFAAAAAA; public uint GXCTextUnselectedColor = 0xFFD5D6D7; public uint GXCSelectedColor = 0xFFFE5E00;//选中颜色 public uint GXCButtonhardWhiteColor = 0xFFE0E0E0;//房间btn半透明背景色 /// <summary> /// 30%透明度黑色 /// </summary> public uint GXCBlack70Color = 0x4C000000; /// <summary> /// 20%透明度黑色 /// </summary> public uint GXCBlack80Color = 0x33000000; public uint GXCButtonTipColor = 0xFF999999;//浅色字提示 public uint GXCTransparent = 0x00FFFFFF; /// <summary> /// 滑条未选择中颜色--7C7C7C ->0xffadadad /// </summary> public uint GXCSliderUnSelectedColor = 0xffadadad; public uint GXCEditorBGColor = 0xFF32B4C8; /// <summary> /// 取消收藏颜色--999999 /// </summary> public uint GXCCancelCollectionBGColor = 0xFF999999; /// <summary> /// 用于空调的选中文字颜色 /// </summary> public uint GXCACSelectedTextColor = 0xFF99D619; /// <summary> /// 开始颜色 /// </summary> public uint GXCArcScaleSeekBarStartColor = 0xFF495AF4; /// <summary> /// 结束颜色 /// </summary> public uint GXCArcScaleSeekBarEndColor = 0xFFAE50A8; public uint GXCButtonBlueColor = 0xFF00AAF0; #endregion #region --Logic定义的颜色-- ZigbeeApp/Shared/DLL/Android/Shared.Droid.HDLWidget.dllBinary files differ
ZigbeeApp/Shared/DLL/Android/Shared.Droid.Smartrefresh.dllBinary files differ
ZigbeeApp/Shared/DLL/Android/Shared.Droid.dllBinary files differ
ZigbeeApp/Shared/Phone/Device/AC/ACControl.cs
@@ -172,7 +172,7 @@ deviceUI.CommonDevice.DeviceStatusReport = common.DeviceStatusReport; foreach(var attList in attriButeList) { var curTemp = (attList.AttriButeData / 100 < ACControlBase.Temperature_High || attList.AttriButeData / 100 > ACControlBase.Temperature_Low) ? attList.AttriButeData / 100 : ACControlBase.Temperature_Default; var curTemp = (attList.AttriButeData / 100 < ACControlBase.Temperature_High && attList.AttriButeData / 100 > ACControlBase.Temperature_Low) ? attList.AttriButeData / 100 : ACControlBase.Temperature_Default; switch (attList.AttributeId) { case 0: @@ -181,17 +181,14 @@ indoorTemperatureBtn.Text = $"{Language.StringByID(R.MyInternationalizationString.Current)} {ac.currentLocalTemperature} ℃"; //currentTemperatureBtn.Text = $"{ac.currentLocalTemperature} ℃"; break; case 17: ac.currentCoolingSetpoint = curTemp; if (ac.currentSystemMode == 3 || ac.currentSystemMode == 8) { mArcScaleSeekBar.Progress = ac.currentCoolingSetpoint; } ac.LastDateTime = DateTime.Now; break; case 18: ac.currentHeatingSetpoint = curTemp; if (ac.currentSystemMode == 4) @@ -200,7 +197,6 @@ } ac.LastDateTime = DateTime.Now; break; case 4096: ac.currentAutoSetpoint = curTemp; if (ac.currentSystemMode == 1) @@ -209,7 +205,6 @@ } ac.LastDateTime = DateTime.Now; break; case 28: //此属性描述恒温设备正处于哪种模式 //Off = 0 Auto = 1 Cool = 3 Heat = 4 FanOnly = 7 Dry = 8 @@ -219,35 +214,29 @@ { switchBtn.IsSelected = false; modeBtn.IsSelected = false; modeBtn.SelectedImagePath = ACControlBase.GetModeSelectedImagePathByModeId(ac.currentSystemMode); modeBtn.UnSelectedImagePath = ACControlBase.GetModeUnSelectedImagePathByModeId(ac.currentSystemMode); currentModeBtn.Text = ACControlBase.GetModeNameByModeId(ac.currentSystemMode); mArcScaleSeekBar.Progress = ACControlBase.GetCurrentModeTemperature(ac); fanModeBtn.IsSelected = false; FanSwingModeBtn.IsSelected = false; mArcScaleSeekBar.SetProgressBarColors(ZigbeeColor.Current.GXCWaveSeekBarUnSelectedColor, ZigbeeColor.Current.GXCWaveSeekBarUnSelectedColor); } else if (ac.currentSystemMode == 1 || ac.currentSystemMode == 3 || ac.currentSystemMode == 4 || ac.currentSystemMode == 7 || ac.currentSystemMode == 8) { switchBtn.IsSelected = true; modeBtn.IsSelected = true; modeBtn.SelectedImagePath = ACControlBase.GetModeSelectedImagePathByModeId(ac.currentSystemMode); modeBtn.UnSelectedImagePath = ACControlBase.GetModeUnSelectedImagePathByModeId(ac.currentSystemMode); currentModeBtn.Text = ACControlBase.GetModeNameByModeId(ac.currentSystemMode); mArcScaleSeekBar.Progress = ACControlBase.GetCurrentModeTemperature(ac); fanModeBtn.IsSelected = true; FanSwingModeBtn.IsSelected = true; mArcScaleSeekBar.SetProgressBarColors(ZigbeeColor.Current.GXCArcScaleSeekBarStartColor, ZigbeeColor.Current.GXCArcScaleSeekBarEndColor); } modeBtn.SelectedImagePath = ACControlBase.GetModeSelectedImagePathByModeId(ac.currentSystemMode); modeBtn.UnSelectedImagePath = ACControlBase.GetModeUnSelectedImagePathByModeId(ac.currentSystemMode); currentModeBtn.Text = ACControlBase.GetModeNameByModeId(ac.currentSystemMode); mArcScaleSeekBar.Progress = ACControlBase.GetCurrentModeTemperature(ac); mArcScaleSeekBar.IsClickable = ACControlBase.IsOpen(ac); break; case 4097: //过虑网清洗标志:42 ac.CleanStatu = attList.AttriButeData == 42; cleanStatu.Visible = ac.CleanStatu; break; case 4099: var value = Convert.ToString(attList.AttriButeData, 2).PadLeft(16, '0'); var modeStr = value.Substring(value.Length - 5, 5); @@ -418,10 +407,10 @@ else { //防止短时间内多次读取设备状态 //if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) //{ if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendACStatuComand(device.CommonDevice); //} } } var de = Shared.Common.Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName); @@ -509,7 +498,7 @@ var deviceNameBtn = new Button() { Y = Application.GetRealHeight(184), Width = Application.GetRealWidth(500), Width = Application.GetRealWidth(600), Height = Application.GetRealHeight(60), Gravity = Gravity.CenterHorizontal, Text = device.CommonDevice.DeviceEpointName, @@ -535,11 +524,20 @@ Width = Application.GetRealWidth(671), Height = Application.GetRealHeight(671), Gravity = Gravity.CenterHorizontal, MinValue=ACControlBase.Temperature_Low, MaxValue=ACControlBase.Temperature_High, Progress=ACControlBase.GetCurrentModeTemperature(ac) MinValue = ACControlBase.Temperature_Low, MaxValue = ACControlBase.Temperature_High, Progress = ACControlBase.GetCurrentModeTemperature(ac), IsClickable = ACControlBase.IsOpen(ac) }; itemView.AddChidren(mArcScaleSeekBar); if(ACControlBase.IsOpen(ac)) { mArcScaleSeekBar.SetProgressBarColors(ZigbeeColor.Current.GXCArcScaleSeekBarStartColor, ZigbeeColor.Current.GXCArcScaleSeekBarEndColor); } else { mArcScaleSeekBar.SetProgressBarColors(ZigbeeColor.Current.GXCWaveSeekBarUnSelectedColor, ZigbeeColor.Current.GXCWaveSeekBarUnSelectedColor); } mArcScaleSeekBar.OnStopTrackingTouchEvent += (sender, e) => { if (ac.currentSystemMode == 3 || ac.currentSystemMode == 8) @@ -582,7 +580,7 @@ addTemperatureBtn = new Button() { X = Application.GetRealWidth(620), X = Application.GetRealWidth(610), Y = Application.GetRealHeight(650), Width = Application.GetMinRealAverage(80), Height = Application.GetMinRealAverage(80), @@ -708,12 +706,14 @@ private void Switch_MouseUpEvent(object sender, MouseEventArgs mouseEventArgs) { switchBtn.IsSelected = !switchBtn.IsSelected; mArcScaleSeekBar.IsClickable = switchBtn.IsSelected; if (switchBtn.IsSelected == true) { ac.Open(); modeBtn.IsSelected = true; fanModeBtn.IsSelected = true; FanSwingModeBtn.IsSelected = true; mArcScaleSeekBar.SetProgressBarColors(ZigbeeColor.Current.GXCArcScaleSeekBarStartColor, ZigbeeColor.Current.GXCArcScaleSeekBarEndColor); } else { @@ -721,6 +721,7 @@ modeBtn.IsSelected = false; fanModeBtn.IsSelected = false; FanSwingModeBtn.IsSelected = false; mArcScaleSeekBar.SetProgressBarColors(ZigbeeColor.Current.GXCWaveSeekBarUnSelectedColor, ZigbeeColor.Current.GXCWaveSeekBarUnSelectedColor); } } @@ -1413,8 +1414,6 @@ } #endregion #region ◆ 控制反馈_________________________ ZigbeeApp/Shared/Phone/Device/Category/Category.cs
@@ -249,7 +249,7 @@ ac.DeviceStatusReport = common.DeviceStatusReport; foreach(var attList in attriButeList) { var curTemp = (attList.AttriButeData / 100 < ACControlBase.Temperature_High || attList.AttriButeData / 100 > ACControlBase.Temperature_Low) ? attList.AttriButeData / 100 : ACControlBase.Temperature_Default; var curTemp = (attList.AttriButeData / 100 < ACControlBase.Temperature_High && attList.AttriButeData / 100 > ACControlBase.Temperature_Low) ? attList.AttriButeData / 100 : ACControlBase.Temperature_Default; switch (attList.AttributeId) { case 0: @@ -520,7 +520,7 @@ functionBtn.Init(); functionBtn.SetTitle(R.MyInternationalizationString.Function); //自动化 automationBtn = new ButtonLineForm(CommonFormResouce.X_Left + 150 * 2 + 20, 34, 150, 68); automationBtn = new ButtonLineForm(CommonFormResouce.X_Left + 150 * 2 + 20+50, 34, 150, 68); automationBtn.Init(); automationBtn.SetTitle(R.MyInternationalizationString.Automation); //隐藏自动化 @@ -859,623 +859,651 @@ } } } foreach (var deviceUI in sameTypeList) for (int i=0;i<sameTypeList.Count;i++) { //删除设备 EventHandler<MouseEventArgs> delEvent = (delSender, delE) => var deviceUI = sameTypeList[i]; new System.Threading.Thread(() => { var alert = new CustomAlert(); AddChidren(alert); alert.Show(Language.StringByID(R.MyInternationalizationString.DeleteFunction)); alert.ResultEventHandler += (e2) => Application.RunOnMainThread(() => { if (e2) try { Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.CommonDevice); deviceListScrolView.RemoveViewByTag((delSender as Button).Tag); sameTypeList.Remove(deviceUI); if (sameTypeList.Count == 0) //删除设备 EventHandler<MouseEventArgs> delEvent = (delSender, delE) => { RefreshBodyView(); } } }; }; EventHandler<MouseEventArgs> deviceDetailHandler = (send2, e2) => { var detailInfo = new Device.CommonForm.DeviceDetailInfo { }; UserView.HomePage.Instance.AddChidren(detailInfo); UserView.HomePage.Instance.PageIndex += 1; detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); detailInfo.action = RefreshBodyView; }; if (deviceUI.CommonDevice.Type == DeviceType.OnOffOutput) { //灯 var light = deviceUI.CommonDevice as ToggleLight; //补上非远程 if (light.Gateway == null) { continue; } if (light.Gateway.IsVirtual) { UserHomeView.ReadStatus(light, () => { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); }); } else { //防止短时间内多次读取状态 if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - light.LastDateTime).TotalSeconds) { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); } } var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(light.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.SetStatu(light.OnOffStatus == 1); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { zbGateway = deviceUI.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; deviceRow.IsSelected = (send2 as Button).IsSelected; if ((send2 as Button).IsSelected) { light.SwitchControl(1); } else { light.SwitchControl(0); } deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); //控制延时回调 DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { if (deviceUI.CommonDevice.DfunctionType == DeviceFunctionType.A开关) { var lightControl = new Phone.Device.Light.OnOffControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(deviceUI, room); } else if (deviceUI.CommonDevice.DfunctionType == DeviceFunctionType.A插座) { var lightControl = new Phone.Device.Light.PlugControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(deviceUI, room); } else { var lightControl = new Phone.Device.Light.LightControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(deviceUI, room); } }; var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI, Radius = 0 }; var delBtn = new Device.CommonForm.RowLayoutDeleteButton() { Tag = deviceUI, Radius = 0 }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } } else if (deviceUI.CommonDevice.Type == DeviceType.AirSwitch) { //空气开关 var airSwitch = deviceUI.CommonDevice as ZigBee.Device.AirSwitch; //补上非远程 if (airSwitch.Gateway == null) { continue; } if (airSwitch.Gateway.IsVirtual) { UserHomeView.ReadStatus(airSwitch, () => { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); }); } else { if ((DateTime.Now - airSwitch.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); } } var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(airSwitch.IsOnline == 1); deviceRow.SetStatu(airSwitch.OnOffStatus == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { zbGateway = deviceUI.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; if ((send2 as Button).IsSelected) { airSwitch.SwitchControl(1); } else { airSwitch.SwitchControl(0); } deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); //控制延时回调 DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { var lightControl = new Phone.Device.Light.AirSwitchControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(deviceUI, room); }; var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI, Radius = 0 }; var delBtn = new Device.CommonForm.RowLayoutDeleteButton() { Tag = deviceUI, Radius = 0 }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } } else if (deviceUI.CommonDevice.Type == DeviceType.DimmableLight) { //调光灯 var dimmableLight = deviceUI.CommonDevice as ZigBee.Device.DimmableLight; //补上非远程 if (dimmableLight.Gateway == null) { continue; } if (dimmableLight.Gateway.IsVirtual) { UserHomeView.ReadStatus(dimmableLight, () => { ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(deviceUI.CommonDevice); }); } else { if ((DateTime.Now - dimmableLight.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(deviceUI.CommonDevice); } } var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(dimmableLight.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.SetStatu(dimmableLight.OnOffStatus == 1); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { zbGateway = deviceUI.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; if ((send2 as Button).IsSelected) { dimmableLight.SwitchControl(1); } else { dimmableLight.SwitchControl(0); } deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); //控制延时回调 DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { var dimmableLightControl = new Phone.Device.Light.DimmableLightControl(); UserView.HomePage.Instance.AddChidren(dimmableLightControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; //dimmableLightControl.action = RefreshBodyView; dimmableLightControl.Show(deviceUI, room); }; var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI, Radius = 0 }; var delBtn = new Device.CommonForm.RowLayoutDeleteButton() { Tag = deviceUI, Radius = 0 }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } } else if (deviceUI.CommonDevice.Type == DeviceType.Thermostat) { //空调 var ac = deviceUI.CommonDevice as ZigBee.Device.AC; //补上非远程 if (ac.Gateway == null) { continue; } if (ac.Gateway.IsVirtual) { //发送读取状态命令 UserView.UserHomeView.ReadStatus(ac, () => { ReadDeviceAttributeLogic.Instance.SendACStatuComand(deviceUI.CommonDevice); }); } else { //防止短时间内多次读取设备状态 if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendACStatuComand(deviceUI.CommonDevice); } } var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(ac.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.SetStatu(ac.currentSystemMode != 1); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { zbGateway = deviceUI.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; if ((send2 as Button).IsSelected) { ac.Open(); } else { ac.Close(); } deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); //控制延时回调 DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI, Radius = 0 }; var delBtn = new CommonForm.RowLayoutDeleteButton() { Tag = deviceUI, Radius = 0 }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { var acControl = new Phone.Device.AC.ACControl(); UserView.HomePage.Instance.AddChidren(acControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; //rollerShadeControl.action = RefreshBodyView; acControl.Show(deviceUI, room); }; } else if (deviceUI.CommonDevice.Type == DeviceType.WindowCoveringDevice) { //卷帘 var rollerShade = deviceUI.CommonDevice as ZigBee.Device.Rollershade; //不上非远程 if (rollerShade.Gateway == null) { continue; } if (rollerShade.Gateway.IsVirtual) { UserHomeView.ReadStatus(rollerShade, () => { ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI.CommonDevice); }); } else { //防止短时间内多次读取 if ((DateTime.Now - rollerShade.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI.CommonDevice); } } var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionForWinRow(0, 35); deviceRow.Init(deviceUI); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(rollerShade.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.SetStatu(rollerShade.WcdCurrentPositionLiftPercentage != 0); deviceRow.SetRollerShadeIcon(rollerShade.WcdType); deviceTypeRowLayout.AddChidren(deviceRow); if (rollerShade.WcdType == -1) { CommonPage.Loading.Start(); new System.Threading.Thread(() => { Rollershade.ReadWcdTypeAction(rollerShade, () => { Application.RunOnMainThread(() => var alert = new CustomAlert(); AddChidren(alert); alert.Show(Language.StringByID(R.MyInternationalizationString.DeleteFunction)); alert.ResultEventHandler += (e2) => { if (e2) { Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.CommonDevice); deviceListScrolView.RemoveViewByTag((delSender as Button).Tag); sameTypeList.Remove(deviceUI); if (sameTypeList.Count == 0) { RefreshBodyView(); } } }; }; EventHandler<MouseEventArgs> deviceDetailHandler = (send2, e2) => { var detailInfo = new Device.CommonForm.DeviceDetailInfo { }; UserView.HomePage.Instance.AddChidren(detailInfo); UserView.HomePage.Instance.PageIndex += 1; detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); detailInfo.action = RefreshBodyView; }; if (deviceUI.CommonDevice.Type == DeviceType.OnOffOutput) { //灯 var light = deviceUI.CommonDevice as ToggleLight; if (light.Gateway != null) { new System.Threading.Thread(() => { System.Threading.Thread.Sleep(100 * i); if (light.Gateway.IsVirtual) { UserHomeView.ReadStatus(light, () => { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); }); } else { //防止短时间内多次读取状态 if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - light.LastDateTime).TotalSeconds) { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); } } }) { IsBackground = true }.Start(); var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(light.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.SetStatu(light.OnOffStatus == 1); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { zbGateway = deviceUI.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; deviceRow.IsSelected = (send2 as Button).IsSelected; if ((send2 as Button).IsSelected) { light.SwitchControl(1); } else { light.SwitchControl(0); } deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); //控制延时回调 DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { if (deviceUI.CommonDevice.DfunctionType == DeviceFunctionType.A开关) { var lightControl = new Phone.Device.Light.OnOffControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(deviceUI, room); } else if (deviceUI.CommonDevice.DfunctionType == DeviceFunctionType.A插座) { var lightControl = new Phone.Device.Light.PlugControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(deviceUI, room); } else { var lightControl = new Phone.Device.Light.LightControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(deviceUI, room); } }; var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI, Radius = 0 }; var delBtn = new CommonForm.RowLayoutDeleteButton() { Tag = deviceUI, Radius = 0 }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } } } else if (deviceUI.CommonDevice.Type == DeviceType.AirSwitch) { //空气开关 var airSwitch = deviceUI.CommonDevice as AirSwitch; if (airSwitch.Gateway != null) { new System.Threading.Thread(() => { System.Threading.Thread.Sleep(100 * i); if (airSwitch.Gateway.IsVirtual) { UserHomeView.ReadStatus(airSwitch, () => { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); }); } else { if ((DateTime.Now - airSwitch.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); } } }) { IsBackground = true }.Start(); var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(airSwitch.IsOnline == 1); deviceRow.SetStatu(airSwitch.OnOffStatus == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { zbGateway = deviceUI.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; if ((send2 as Button).IsSelected) { airSwitch.SwitchControl(1); } else { airSwitch.SwitchControl(0); } deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); //控制延时回调 DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { var lightControl = new Phone.Device.Light.AirSwitchControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(deviceUI, room); }; var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI, Radius = 0 }; var delBtn = new CommonForm.RowLayoutDeleteButton() { Tag = deviceUI, Radius = 0 }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } } } else if (deviceUI.CommonDevice.Type == DeviceType.DimmableLight) { //调光灯 var dimmableLight = deviceUI.CommonDevice as ZigBee.Device.DimmableLight; if (dimmableLight.Gateway != null) { new System.Threading.Thread(() => { System.Threading.Thread.Sleep(100 * i); if (dimmableLight.Gateway.IsVirtual) { UserHomeView.ReadStatus(dimmableLight, () => { ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(deviceUI.CommonDevice); }); } else { if ((DateTime.Now - dimmableLight.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(deviceUI.CommonDevice); } } }) { IsBackground = true }.Start(); var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(dimmableLight.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.SetStatu(dimmableLight.OnOffStatus == 1); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { zbGateway = deviceUI.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; if ((send2 as Button).IsSelected) { dimmableLight.SwitchControl(1); } else { dimmableLight.SwitchControl(0); } deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); //控制延时回调 DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { var dimmableLightControl = new Phone.Device.Light.DimmableLightControl(); UserView.HomePage.Instance.AddChidren(dimmableLightControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; //dimmableLightControl.action = RefreshBodyView; dimmableLightControl.Show(deviceUI, room); }; var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI, Radius = 0 }; var delBtn = new Device.CommonForm.RowLayoutDeleteButton() { Tag = deviceUI, Radius = 0 }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } } } else if (deviceUI.CommonDevice.Type == DeviceType.Thermostat) { //空调 var ac = deviceUI.CommonDevice as ZigBee.Device.AC; if (ac.Gateway != null) { new System.Threading.Thread(() => { System.Threading.Thread.Sleep(100 * i); if (ac.Gateway.IsVirtual) { //发送读取状态命令 UserView.UserHomeView.ReadStatus(ac, () => { ReadDeviceAttributeLogic.Instance.SendACStatuComand(deviceUI.CommonDevice); }); } else { //防止短时间内多次读取设备状态 if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendACStatuComand(deviceUI.CommonDevice); } } }) { IsBackground = true }.Start(); var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(ac.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.SetStatu(ac.currentSystemMode != 1); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { zbGateway = deviceUI.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; if ((send2 as Button).IsSelected) { ac.Open(); } else { ac.Close(); } deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); //控制延时回调 DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI, Radius = 0 }; var delBtn = new CommonForm.RowLayoutDeleteButton() { Tag = deviceUI, Radius = 0 }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { var acControl = new Phone.Device.AC.ACControl(); UserView.HomePage.Instance.AddChidren(acControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; //rollerShadeControl.action = RefreshBodyView; acControl.Show(deviceUI, room); }; } } else if (deviceUI.CommonDevice.Type == DeviceType.WindowCoveringDevice) { //卷帘 var rollerShade = deviceUI.CommonDevice as ZigBee.Device.Rollershade; if (rollerShade.Gateway != null) { new System.Threading.Thread(() => { System.Threading.Thread.Sleep(100 * i); if (rollerShade.Gateway.IsVirtual) { UserHomeView.ReadStatus(rollerShade, () => { ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI.CommonDevice); }); } else { //防止短时间内多次读取 if ((DateTime.Now - rollerShade.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI.CommonDevice); } } }) { IsBackground = true }.Start(); var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionForWinRow(0, 35); deviceRow.Init(deviceUI); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(rollerShade.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.SetStatu(rollerShade.WcdCurrentPositionLiftPercentage != 0); deviceRow.SetRollerShadeIcon(rollerShade.WcdType); CommonPage.Loading.Hide(); }); }); }) { IsBackground = true }.Start(); } deviceTypeRowLayout.AddChidren(deviceRow); var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI, Radius = 0 }; var delBtn = new Device.CommonForm.RowLayoutDeleteButton() { Tag = deviceUI, Radius = 0 }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } if (rollerShade.WcdType == -1) { CommonPage.Loading.Start(); new System.Threading.Thread(() => { Rollershade.ReadWcdTypeAction(rollerShade, () => { Application.RunOnMainThread(() => { deviceRow.SetRollerShadeIcon(rollerShade.WcdType); CommonPage.Loading.Hide(); }); }); }) { IsBackground = true }.Start(); } deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { var rollerShadeControl = new Phone.Device.Curtain.RollerShadeControl(); UserView.HomePage.Instance.AddChidren(rollerShadeControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; //rollerShadeControl.action = RefreshBodyView; rollerShadeControl.Show(deviceUI, room); }; } else if (deviceUI.CommonDevice.Type == DeviceType.DoorLock) { var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI, Radius = 0 }; var delBtn = new Device.CommonForm.RowLayoutDeleteButton() { Tag = deviceUI, Radius = 0 }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(deviceUI.CommonDevice.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.HideSwitchBtn(true); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { var rollerShadeControl = new Phone.Device.Curtain.RollerShadeControl(); UserView.HomePage.Instance.AddChidren(rollerShadeControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; //rollerShadeControl.action = RefreshBodyView; rollerShadeControl.Show(deviceUI, room); }; } } else if (deviceUI.CommonDevice.Type == DeviceType.DoorLock) { var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(deviceUI.CommonDevice.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.HideSwitchBtn(true); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { var userDoorLockPage = new UserDoorLockPage(room, deviceUI); HomePage.Instance.AddChidren(userDoorLockPage); HomePage.Instance.PageIndex += 1; userDoorLockPage.Show(); }; deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { var userDoorLockPage = new UserDoorLockPage(room, deviceUI); HomePage.Instance.AddChidren(userDoorLockPage); HomePage.Instance.PageIndex += 1; userDoorLockPage.Show(); }; var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI }; var delBtn = new Device.CommonForm.RowLayoutDeleteButton() { Tag = deviceUI }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } } else { var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI }; var delBtn = new Device.CommonForm.RowLayoutDeleteButton() { Tag = deviceUI }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } } else { var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(deviceUI.CommonDevice.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.HideSwitchBtn(true); deviceTypeRowLayout.AddChidren(deviceRow); var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetOnLineStatu(deviceUI.CommonDevice.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.HideSwitchBtn(true); deviceTypeRowLayout.AddChidren(deviceRow); var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI }; var delBtn = new Device.CommonForm.RowLayoutDeleteButton() { Tag = deviceUI }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } } var editBtn = new CommonForm.RowLayoutEditButton() { Tag = deviceUI }; var delBtn = new Device.CommonForm.RowLayoutDeleteButton() { Tag = deviceUI }; if (room.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; } } } catch { } }); }) { IsBackground=true}.Start(); } }; ZigbeeApp/Shared/Phone/UserCenter/Abount/SLAForm.cs
@@ -44,10 +44,11 @@ Width = Application.GetRealWidth(942), Height = Application.GetRealHeight(800), Text = Language.StringByID(R.MyInternationalizationString.SLA_Detail).Replace("{\\r\\n}","\r\n\r\n"), TextAlignment = TextAlignment.CenterLeft, TextAlignment = TextAlignment.TopLeft, TextColor = ZigbeeColor.Current.GXCTextColor, IsMoreLines=true, TextSize = 12 TextSize = 12, }; bodyFrameLayout.AddChidren(detail); } ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs
@@ -223,7 +223,7 @@ var attriButeList = ac.DeviceStatusReport.AttriBute; foreach(var attList in attriButeList) { var curTemp = (attList.AttriButeData / 100 < ACControlBase.Temperature_High || attList.AttriButeData / 100 > ACControlBase.Temperature_Low) ? attList.AttriButeData / 100 : ACControlBase.Temperature_Default; var curTemp = (attList.AttriButeData / 100 < ACControlBase.Temperature_High && attList.AttriButeData / 100 > ACControlBase.Temperature_Low) ? attList.AttriButeData / 100 : ACControlBase.Temperature_Default; switch (attList.AttributeId) { case 0: @@ -924,682 +924,689 @@ else { deviceVerticalScrolViewLayout = new VerticalScrolViewLayout { }; functionSceneBodyView.AddChidren(deviceVerticalScrolViewLayout); for (int i = 0; i < deviceList.Count; i++) { int t = i % 2; int tt = i / 2; int xx = 43 + i % 2 * (20 + 487); int yy = 14; var device = deviceList[i]; if (device == null || device.CommonDevice == null) { continue; } if (i % 2 == 0) { itemView = new FrameLayout() //new System.Threading.Thread(() => //{ Application.RunOnMainThread(() => { Height = Application.GetRealHeight(14 + 348), }; deviceVerticalScrolViewLayout.AddChidren(itemView); } //收藏 EventHandler<MouseEventArgs> collectionEvent = (sender, e) => { if ((sender as Button).IsSelected) { Shared.Common.Room.CurrentRoom.GetLoveRoom().DeleteDevice(device.FileName); (sender as Button).IsSelected = false; } else { Shared.Common.Room.CurrentRoom.GetLoveRoom().AddDevice(device.FileName); (sender as Button).IsSelected = true; } if (Room.CurrentRoom.IsLove) { RefreshBodyView(); } }; //////判断设备是否支持的属性 如开关等控制 if (device.CommonDevice.Type == ZigBee.Device.DeviceType.WindowCoveringDevice) { //窗帘 卷帘 var rollerShade = (ZigBee.Device.Rollershade)device.CommonDevice; //不上非远程 if (rollerShade.Gateway == null) { continue; } if (rollerShade.Gateway.IsVirtual) { //发送读取状态命令 ReadStatus(rollerShade, () => try { ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(device.CommonDevice); }); } else { if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - rollerShade.LastDateTime).TotalSeconds) { ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(device.CommonDevice); } } var lightView = new FunctionMainView(xx, yy); lightView.Tag = device; itemView.AddChidren(lightView); lightView.Init(); lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(rollerShade.DeviceEpointName); //lightView.SetStatu(true); lightView.IsSelected = rollerShade.WcdCurrentPositionLiftPercentage == 100; lightView.SetCollect(true); lightView.SwitchButton.MouseUpEventHandler += (sender, e) => { (sender as Button).IsSelected = !(sender as Button).IsSelected; if ((sender as Button).IsSelected) { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); (device.CommonDevice as Rollershade).CurtainUpDownStopControl(0); ((sender as Button).Parent as FunctionMainView).SetStatuText(CommonFormResouce.GetSwitchStatu(true)); ((sender as Button).Parent as FunctionMainView).IsSelected = true; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => int t = i % 2; int tt = i / 2; int xx = 43 + i % 2 * (20 + 487); int yy = 14; if (i % 2 == 0) { if (Parent == null) itemView = new FrameLayout() { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } else { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); (device.CommonDevice as Rollershade).CurtainUpDownStopControl(1); ((sender as Button).Parent as FunctionMainView).SetStatuText(CommonFormResouce.GetSwitchStatu(false)); ((sender as Button).Parent as FunctionMainView).IsSelected = false; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => Height = Application.GetRealHeight(14 + 348), }; deviceVerticalScrolViewLayout.AddChidren(itemView); } //收藏 EventHandler<MouseEventArgs> collectionEvent = (sender, e) => { if (Parent == null) if ((sender as Button).IsSelected) { return; Common.Room.CurrentRoom.GetLoveRoom().DeleteDevice(device.FileName); (sender as Button).IsSelected = false; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) else { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); Common.Room.CurrentRoom.GetLoveRoom().AddDevice(device.FileName); (sender as Button).IsSelected = true; } }); } }; if (Room.CurrentRoom.IsLove) { RefreshBodyView(); } }; lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; var rollerShadeControl = new Phone.Device.Curtain.RollerShadeControl(); UserView.HomePage.Instance.AddChidren(rollerShadeControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; //rollerShadeControl.action = RefreshBodyView; rollerShadeControl.Show(device, Room.CurrentRoom); }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.OnOffOutput) { //开关灯 var light = device.CommonDevice as ToggleLight; //补上非远程 if (light.Gateway == null) { continue; } if (light.Gateway.IsVirtual) { //发送读取状态命令 ReadStatus(light, () => { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); }); } else { if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - light.LastDateTime).TotalSeconds) { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); } } var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(device.CommonDevice.DeviceEpointName); lightView.IsSelected = light.OnOffStatus == 1; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName); if (dev == null) { lightView.CollectButton.IsSelected = false; } else { lightView.CollectButton.IsSelected = true; } lightView.SwitchButton.MouseUpEventHandler += (sender, e) => { (sender as Button).IsSelected = !(sender as Button).IsSelected; if ((sender as Button).IsSelected) { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); light.SwitchControl(1); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = true; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => if (device.CommonDevice.Type == DeviceType.WindowCoveringDevice) { if (Parent == null) //窗帘 卷帘 var rollerShade = (ZigBee.Device.Rollershade)device.CommonDevice; if (rollerShade.Gateway != null) { return; new System.Threading.Thread(() => { System.Threading.Thread.Sleep(100 * i); if (rollerShade.Gateway.IsVirtual) { ReadStatus(rollerShade, () => { ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(device.CommonDevice); }); } else { if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - rollerShade.LastDateTime).TotalSeconds) { ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(device.CommonDevice); } } }) { IsBackground = true }.Start(); var lightView = new FunctionMainView(xx, yy); lightView.Tag = device; itemView.AddChidren(lightView); lightView.Init(); lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(rollerShade.DeviceEpointName); //lightView.SetStatu(true); lightView.IsSelected = rollerShade.WcdCurrentPositionLiftPercentage == 100; lightView.SetCollect(true); lightView.SwitchButton.MouseUpEventHandler += (sender, e) => { (sender as Button).IsSelected = !(sender as Button).IsSelected; if ((sender as Button).IsSelected) { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); (device.CommonDevice as Rollershade).CurtainUpDownStopControl(0); ((sender as Button).Parent as FunctionMainView).SetStatuText(CommonFormResouce.GetSwitchStatu(true)); ((sender as Button).Parent as FunctionMainView).IsSelected = true; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } else { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); (device.CommonDevice as Rollershade).CurtainUpDownStopControl(1); ((sender as Button).Parent as FunctionMainView).SetStatuText(CommonFormResouce.GetSwitchStatu(false)); ((sender as Button).Parent as FunctionMainView).IsSelected = false; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } }; lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; var rollerShadeControl = new Phone.Device.Curtain.RollerShadeControl(); UserView.HomePage.Instance.AddChidren(rollerShadeControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; //rollerShadeControl.action = RefreshBodyView; rollerShadeControl.Show(device, Room.CurrentRoom); }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } else { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); light.SwitchControl(0); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = false; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => } else if (device.CommonDevice.Type == DeviceType.OnOffOutput) { if (Parent == null) //开关灯 var light = device.CommonDevice as ToggleLight; if (light.Gateway != null) { return; new System.Threading.Thread(() => { System.Threading.Thread.Sleep(100 * i); if (light.Gateway.IsVirtual) { ReadStatus(light, () => { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); }); } else { if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - light.LastDateTime).TotalSeconds) { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); } } }) { IsBackground = true }.Start(); var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(device.CommonDevice.DeviceEpointName); lightView.IsSelected = light.OnOffStatus == 1; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName); if (dev == null) { lightView.CollectButton.IsSelected = false; } else { lightView.CollectButton.IsSelected = true; } lightView.SwitchButton.MouseUpEventHandler += (sender, e) => { (sender as Button).IsSelected = !(sender as Button).IsSelected; if ((sender as Button).IsSelected) { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); light.SwitchControl(1); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = true; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } else { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); light.SwitchControl(0); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = false; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } }; lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; if (device.CommonDevice.DfunctionType == DeviceFunctionType.A开关) { var lightControl = new Phone.Device.Light.OnOffControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(device, Room.CurrentRoom); } else if (device.CommonDevice.DfunctionType == DeviceFunctionType.A插座) { var lightControl = new Phone.Device.Light.PlugControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(device, Room.CurrentRoom); } else { var lightControl = new Phone.Device.Light.LightControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(device, Room.CurrentRoom); } }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } }; lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; if (device.CommonDevice.DfunctionType == DeviceFunctionType.A开关) { var lightControl = new Phone.Device.Light.OnOffControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(device, Room.CurrentRoom); } else if (device.CommonDevice.DfunctionType == DeviceFunctionType.A插座) { var lightControl = new Phone.Device.Light.PlugControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(device, Room.CurrentRoom); } else { var lightControl = new Phone.Device.Light.LightControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(device, Room.CurrentRoom); } }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.AirSwitch) { //空气开关 var airSwitch = device.CommonDevice as AirSwitch; //补上非远程 if (airSwitch.Gateway == null) { continue; } if (airSwitch.Gateway.IsVirtual) { //发送读取状态命令 ReadStatus(airSwitch, () => { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); }); } else { //防止短时间内多次读取设备状态 if ((DateTime.Now - airSwitch.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); } } var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(airSwitch.DeviceEpointName); //lightView.SetStatu(true); lightView.IsSelected = airSwitch.OnOffStatus == 1; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); lightView.SwitchButton.MouseUpEventHandler += (sender, e) => { (sender as Button).IsSelected = !(sender as Button).IsSelected; if ((sender as Button).IsSelected) { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); airSwitch.SwitchControl(1); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = true; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => } else if (device.CommonDevice.Type == DeviceType.AirSwitch) { if (Parent == null) //空气开关 var airSwitch = device.CommonDevice as AirSwitch; if (airSwitch.Gateway != null) { return; new System.Threading.Thread(() => { System.Threading.Thread.Sleep(100 * i); if (airSwitch.Gateway.IsVirtual) { ReadStatus(airSwitch, () => { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); }); } else { if ((DateTime.Now - airSwitch.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); } } }) { IsBackground = true }.Start(); var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(airSwitch.DeviceEpointName); //lightView.SetStatu(true); lightView.IsSelected = airSwitch.OnOffStatus == 1; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); lightView.SwitchButton.MouseUpEventHandler += (sender, e) => { (sender as Button).IsSelected = !(sender as Button).IsSelected; if ((sender as Button).IsSelected) { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); airSwitch.SwitchControl(1); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = true; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } else { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); airSwitch.SwitchControl(0); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = false; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } }; lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; var lightControl = new Phone.Device.Light.AirSwitchControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(device, Room.CurrentRoom); }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } else { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); airSwitch.SwitchControl(0); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = false; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => } else if (device.CommonDevice.Type == DeviceType.Thermostat) { if (Parent == null) //恒温器-AC-空调 var ac = device.CommonDevice as AC; if (ac.Gateway != null) { return; new System.Threading.Thread(() => { System.Threading.Thread.Sleep(100 * i); if (ac.Gateway.IsVirtual) { ReadStatus(ac, () => { ReadDeviceAttributeLogic.Instance.SendACStatuComand(device.CommonDevice); }); } else { if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendACStatuComand(device.CommonDevice); } } }) { IsBackground = true }.Start(); var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(device.CommonDevice.DeviceEpointName); lightView.IsSelected = ac.currentSystemMode != 0; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); lightView.SwitchButton.MouseUpEventHandler += (sender, e) => { (sender as Button).IsSelected = !(sender as Button).IsSelected; if ((sender as Button).IsSelected) { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); ac.Open(); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = true; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } else { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); ac.Close(); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = false; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } }; lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; var lightControl = new Phone.Device.AC.ACControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(device, Room.CurrentRoom); }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } }; lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; var lightControl = new Phone.Device.Light.AirSwitchControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(device, Room.CurrentRoom); }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.Thermostat) { //恒温器-AC-空调 var ac = device.CommonDevice as AC; //补上非远程 if (ac.Gateway == null) { continue; } if (ac.Gateway.IsVirtual) { //发送读取状态命令 ReadStatus(ac, () => { ReadDeviceAttributeLogic.Instance.SendACStatuComand(device.CommonDevice); }); } else { //防止短时间内多次读取设备状态 if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendACStatuComand(device.CommonDevice); } } var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(device.CommonDevice.DeviceEpointName); lightView.IsSelected = ac.currentSystemMode != 0; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); lightView.SwitchButton.MouseUpEventHandler += (sender, e) => { (sender as Button).IsSelected = !(sender as Button).IsSelected; if ((sender as Button).IsSelected) { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); ac.Open(); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = true; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => } else if (device.CommonDevice.Type == DeviceType.DimmableLight) { if (Parent == null) //调光灯 var dimmableLight = device.CommonDevice as DimmableLight; if (dimmableLight.Gateway != null) { return; new System.Threading.Thread(() => { System.Threading.Thread.Sleep(100 * i); if (dimmableLight.Gateway.IsVirtual) { //发送读取状态命令 ReadStatus(dimmableLight, () => { ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(device.CommonDevice); }); } else { //防止短时间内多次读取设备状态 if ((DateTime.Now - dimmableLight.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(device.CommonDevice); } } }) { IsBackground = true }.Start(); var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(device.CommonDevice.DeviceEpointName); lightView.IsSelected = dimmableLight.OnOffStatus == 1; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName); if (dev == null) { lightView.CollectButton.IsSelected = false; } else { lightView.CollectButton.IsSelected = true; } lightView.SwitchButton.MouseUpEventHandler += (sender, e) => { (sender as Button).IsSelected = !(sender as Button).IsSelected; if ((sender as Button).IsSelected) { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); dimmableLight.SwitchControl(1); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = true; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } else { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); dimmableLight.SwitchControl(0); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = false; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } }; lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; var dimmableLightControl = new Phone.Device.Light.DimmableLightControl(); UserView.HomePage.Instance.AddChidren(dimmableLightControl); UserView.HomePage.Instance.PageIndex += 1; //dimmableLightControl.action = RefreshBodyView; dimmableLightControl.Show(device, Room.CurrentRoom); }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } else { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); ac.Close(); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = false; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => } else if (device.CommonDevice.Type == DeviceType.DoorLock) { if (Parent == null) //门锁 var dimmableLight = device.CommonDevice as DoorLock; var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(device.CommonDevice.DeviceEpointName); lightView.IsSelected = dimmableLight.IsOnline == 1; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); lightView.CanControl(false); var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName); if (dev == null) { return; lightView.CollectButton.IsSelected = false; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) else { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); lightView.CollectButton.IsSelected = true; } }); } }; lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; var lightControl = new Phone.Device.AC.ACControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; //lightControl.action = RefreshBodyView; lightControl.Show(device, Room.CurrentRoom); }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.DimmableLight) { //调光灯 var dimmableLight = device.CommonDevice as DimmableLight; //补上非远程 if (dimmableLight.Gateway == null) { continue; } if (dimmableLight.Gateway.IsVirtual) { //发送读取状态命令 ReadStatus(dimmableLight, () => { ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(device.CommonDevice); }); } else { //防止短时间内多次读取设备状态 if ((DateTime.Now - dimmableLight.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(device.CommonDevice); } } var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(device.CommonDevice.DeviceEpointName); lightView.IsSelected = dimmableLight.OnOffStatus == 1; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName); if (dev == null) { lightView.CollectButton.IsSelected = false; } else { lightView.CollectButton.IsSelected = true; } lightView.SwitchButton.MouseUpEventHandler += (sender, e) => { (sender as Button).IsSelected = !(sender as Button).IsSelected; if ((sender as Button).IsSelected) { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); dimmableLight.SwitchControl(1); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = true; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; var userDoorLockPage = new UserDoorLockPage(Room.CurrentRoom, device); HomePage.Instance.AddChidren(userDoorLockPage); HomePage.Instance.PageIndex += 1; userDoorLockPage.Show(); }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } else { if (Parent == null) var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(device.CommonDevice.DeviceEpointName); lightView.CanControl(false); lightView.IsSelected = device.CommonDevice.IsOnline == 1; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName); if (dev == null) { return; lightView.CollectButton.IsSelected = false; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) else { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); lightView.CollectButton.IsSelected = true; } }); lightView.CollectButton.MouseUpEventHandler += collectionEvent; } } else catch(Exception ex) { zbGateway = device.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); dimmableLight.SwitchControl(0); ((sender as Button).Parent as FunctionMainView).SetStatuText(device.GetDeviceStatu()); ((sender as Button).Parent as FunctionMainView).IsSelected = false; //控制延时回调 DeviceUI.SendCommandDelayAction(device.CommonDevice, () => { if (Parent == null) { return; } RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); } }; lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; var dimmableLightControl = new Phone.Device.Light.DimmableLightControl(); UserView.HomePage.Instance.AddChidren(dimmableLightControl); UserView.HomePage.Instance.PageIndex += 1; //dimmableLightControl.action = RefreshBodyView; dimmableLightControl.Show(device, Room.CurrentRoom); }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.DoorLock) { //门锁 var dimmableLight = device.CommonDevice as DoorLock; //补上非远程 if (dimmableLight.Gateway == null) { continue; } var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(device.CommonDevice.DeviceEpointName); lightView.IsSelected = dimmableLight.IsOnline == 1; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); lightView.CanControl(false); var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName); if (dev == null) { lightView.CollectButton.IsSelected = false; } else { lightView.CollectButton.IsSelected = true; } lightView.CardBG.MouseUpEventHandler += (sender, e) => { CommonPage.Instance.IsDrawerLockMode = true; var userDoorLockPage = new UserDoorLockPage(Room.CurrentRoom, device); HomePage.Instance.AddChidren(userDoorLockPage); HomePage.Instance.PageIndex += 1; userDoorLockPage.Show(); }; lightView.CollectButton.MouseUpEventHandler += collectionEvent; } else { var lightView = new FunctionMainView(xx, yy); itemView.AddChidren(lightView); lightView.Init(); lightView.Tag = device; lightView.SetDeviceImage(device.IconPath, device.OnlineIconPath); lightView.SetStatuText(device.GetDeviceStatu()); lightView.SetDeviceName(device.CommonDevice.DeviceEpointName); lightView.CanControl(false); lightView.IsSelected = device.CommonDevice.IsOnline == 1; lightView.SetCollect(Room.CurrentRoom.IsCollectInRoom(Room.CurrentRoom, device.FileName)); var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName); if (dev == null) { lightView.CollectButton.IsSelected = false; } else { lightView.CollectButton.IsSelected = true; } lightView.CollectButton.MouseUpEventHandler += collectionEvent; } }); //}) //{ IsBackground = true }.Start(); } } } #endregion ZigbeeApp/Shared/Phone/UserView/UserPage.cs
@@ -150,7 +150,7 @@ foreach(var attList in attriButeList) { //此属性表明室内当前的温度 * 100,实际温度为“LocalTemperature / 100”,单位:℃ var curTemp = (attList.AttriButeData / 100 < ACControlBase.Temperature_High || attList.AttriButeData / 100 > ACControlBase.Temperature_Low) ? attList.AttriButeData / 100 : ACControlBase.Temperature_Default; var curTemp = (attList.AttriButeData / 100 < ACControlBase.Temperature_High && attList.AttriButeData / 100 > ACControlBase.Temperature_Low) ? attList.AttriButeData / 100 : ACControlBase.Temperature_Default; switch (attList.AttributeId) { case 0: