From 351bdda734832d821a9764b0cde8be5d83c4ec50 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期四, 01 十二月 2022 09:56:25 +0800 Subject: [PATCH] 2022年12月01日09:56:23 --- ZigbeeApp/Shared/Phone/Category/Controls/DeviceRow/DeviceColorLightRowControl.cs | 23 ++++++++++++++++++++++- 1 files changed, 22 insertions(+), 1 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Category/Controls/DeviceRow/DeviceColorLightRowControl.cs b/ZigbeeApp/Shared/Phone/Category/Controls/DeviceRow/DeviceColorLightRowControl.cs index f087c86..0caf09c 100755 --- a/ZigbeeApp/Shared/Phone/Category/Controls/DeviceRow/DeviceColorLightRowControl.cs +++ b/ZigbeeApp/Shared/Phone/Category/Controls/DeviceRow/DeviceColorLightRowControl.cs @@ -28,11 +28,18 @@ var btnSwitch = this.AddSwitchControl(); btnSwitch.ButtonClickEvent += (sender, e) => { + //鑾峰彇褰撳墠浜害 + int level = Convert.ToInt32(i_device.GetType().InvokeMember("Level", System.Reflection.BindingFlags.GetField, null, i_device, null)); //濡傛灉浣忓畢涓鸿櫄鎷熶綇瀹�,鐩存帴淇敼缂撳瓨 if (Common.Config.Instance.Home.IsVirtually == true) { //鐩存帴鍙樻洿缂撳瓨 ((LightBase)i_device).OnOffStatus = btnSwitch.IsSelected == true ? 0 : 1; + if (((LightBase)i_device).OnOffStatus == 1 && level == 0) + { + //濡傛灉褰撳墠鏄墦寮�鐘舵��,骞朵笖浜害涓�0鐨勮瘽,鍒欓渶瑕佸彉鎴�100%浜害 + i_device.GetType().InvokeMember("Level", System.Reflection.BindingFlags.SetField, null, i_device, new object[] { 100 }); + } this.RefreshControlInfo(this.device); return; } @@ -46,7 +53,21 @@ { //鎵撳紑 this.SetDeviceStatuText(Language.StringByID(R.MyInternationalizationString.uOpen1)); - i_device.SwitchControl(1); + if (level == 0) + { + //濡傛灉褰撳墠鏄墦寮�鐘舵��,骞朵笖浜害涓�0鐨勮瘽,鍒欓渶瑕佸彉鎴�100%浜害 + i_device.GetType().InvokeMember("SetLevel", System.Reflection.BindingFlags.InvokeMethod, null, i_device, new object[] { 255 }); + } + else + { + i_device.SwitchControl(1); + HdlThreadLogic.Current.RunThread(() => + { + //鑾峰彇鐏厜浜害 + System.Threading.Thread.Sleep(300); + HdlDeviceAttributeLogic.Current.SendLevelStatuComand(i_device); + }); + } } else { -- Gitblit v1.8.0