using System; using HDL_ON.DriverLayer; using HDL_ON.Entity; using Shared; namespace HDL_ON.UI { public partial class CurtainModulePage { /// /// 更新窗帘状态 /// public static void UpdataState(Curtain uCurtain) { Application.RunOnMainThread((Action)(() => { if(bodyView == null) { return; } if (uCurtain.spk == bodyView.curtain.spk && uCurtain.sid == bodyView.curtain.sid) { if (uCurtain.trait_on_off.curValue.ToString() == "stop") { bodyView.btnCurtainOpen.IsSelected = false; bodyView.btnCurtainClose.IsSelected = false; bodyView.btnCurtainStop.IsSelected = true; } else if (uCurtain.trait_on_off.curValue.ToString() == "on") { bodyView.btnCurtainOpen.IsSelected = true; bodyView.btnCurtainClose.IsSelected = false; bodyView.btnCurtainStop.IsSelected = false; bodyView.btnCurtainBgIcon.IsSelected = true; } else if (uCurtain.trait_on_off.curValue.ToString() == "off") { bodyView.btnCurtainOpen.IsSelected = false; bodyView.btnCurtainClose.IsSelected = true; bodyView.btnCurtainStop.IsSelected = false; bodyView.btnCurtainBgIcon.IsSelected = false; } } })); } void LoadEventList() { LoadCollectionEvent(); LoadEvent_ControlEvent(); //回退刷新信息事件 actionRefresh = () => { btnFunctionName.Text = btnFunctionName_Out.Text = curtain.name; btnFromFloor_Out.Text = btnFromFoorAndRoom.Text = curtain.GetRoomListName(); //curtain.SaveFunctionData(true); }; UpdataState(curtain); } /// /// 收藏功能按钮事件 /// void LoadCollectionEvent() { btnCollection.MouseUpEventHandler += (sender, e) => { btnCollection.IsSelected = curtain.collect = btnCollection_Out.IsSelected = !btnCollection.IsSelected; curtain.CollectFunction(); }; } /// /// 加载窗帘开关停按钮控制事件 /// void LoadEvent_ControlEvent() { btnCurtainClose.MouseUpEventHandler = (sender, e) => { btnCurtainClose.IsSelected = true; btnCurtainStop.IsSelected = false; btnCurtainOpen.IsSelected = false; btnCurtainBgIcon.IsSelected = false; curtain.trait_on_off.curValue = "off"; //Control.Send(CommandType_A.write,curtain); System.Collections.Generic.Dictionary d = new System.Collections.Generic.Dictionary(); d.Add("on_off", curtain.trait_on_off.curValue.ToString()); Control.Ins.SendWriteCommand(curtain, d); }; //btnCurtainStop.MouseDownEventHandler = (sender, e) => //{ // btnCurtainStop.IsSelected = true; // //btnCurtainClose.IsSelected = false; // //btnCurtainOpen.IsSelected = false; //}; //btnCurtainOpen.MouseDownEventHandler = (sender, e) => { // btnCurtainOpen.IsSelected = true; //}; //btnCurtainClose.MouseDownEventHandler = (sender, e) => { // btnCurtainClose.IsSelected = true; //}; btnCurtainStop.MouseUpEventHandler = (sender, e) => { btnCurtainOpen.IsSelected = false; btnCurtainClose.IsSelected = false; btnCurtainStop.IsSelected = true; curtain.trait_on_off.curValue = "stop"; System.Collections.Generic.Dictionary d = new System.Collections.Generic.Dictionary(); d.Add("on_off", curtain.trait_on_off.curValue.ToString()); Control.Ins.SendWriteCommand(curtain, d); }; btnCurtainOpen.MouseUpEventHandler = (sender, e) => { btnCurtainOpen.IsSelected = true; btnCurtainClose.IsSelected = false; btnCurtainStop.IsSelected = false; btnCurtainBgIcon.IsSelected = true; curtain.trait_on_off.curValue = "on"; System.Collections.Generic.Dictionary d = new System.Collections.Generic.Dictionary(); d.Add("on_off", curtain.trait_on_off.curValue.ToString()); Control.Ins.SendWriteCommand(curtain, d); }; } } }