using System; using HDL_ON.Entity; using Shared; namespace HDL_ON.UI { public partial class FunctionControlZone { /// /// 加载功能收藏按钮事件 /// void LoadCollectionEvent() { btnCollectionIcon.MouseUpEventHandler += (sender, e) => { btnCollectionIcon.IsSelected = function.collection = !btnCollectionIcon.IsSelected; DB_ResidenceData.residenceData.SaveResidenceData(); }; } /// /// 加载场景控制事件 /// void LoadEvent_ControlScene() { EventHandler upEvent = (sender, e) => { bodyDiv.BorderColor = CSS.CSS_Color.MainColor; bodyDiv.BorderWidth = (uint)Application.GetRealWidth(5); Control.Send(function); new System.Threading.Thread(() => { System.Threading.Thread.Sleep(1000); Application.RunOnMainThread(() => { bodyDiv.BorderColor = CSS.CSS_Color.MainColor; bodyDiv.BorderWidth = (uint)Application.GetRealWidth(0); }); }) { IsBackground = true }.Start(); }; btnName.MouseUpEventHandler = upEvent; btnFromFloor.MouseUpEventHandler = upEvent; bodyDiv.MouseUpEventHandler = upEvent; } /// /// 开关事件 /// void LoadEvent_SwitchFunction(Button btnSwitch) { btnSwitch.MouseUpEventHandler = (sender, e) => { btnSwitch.IsSelected = !btnSwitch.IsSelected; new System.Threading.Thread(() => { function.on_off = btnSwitch.IsSelected ? "on" : "off"; Control.Send(CommandType_A.write, function); }) { IsBackground = true }.Start(); }; } #region 灯光的事件列表 /// /// 灯光开关事件 /// void LoadEvent_LightSwitch(Button btnSwitch) { btnSwitch.MouseUpEventHandler += (sender, e) => { btnSwitch.IsSelected = !btnSwitch.IsSelected; new System.Threading.Thread(() => { if (function.functionCategory == FunctionCategory.Light) { var light = function as Light; light.on_off = btnSwitch.IsSelected ? "on" : "off"; Control.Send(CommandType_A.write, function); } }) { IsBackground = true }.Start(); }; } /// /// 灯光亮度调节事件 /// void LoadEvent_LightDimming(DiyImageSeekBar dimmerControlBar) { if (function.functionType == FunctionType.Dimmer || function.functionType == FunctionType.RGB) { if (dimmerControlBar == null) return; var light = function as Light; dimmerControlBar.OnProgressChangedEvent += (sender, e) => { dimmerControlBar.Tag = DateTime.Now; if ((DateTime.Now - (DateTime)(dimmerControlBar.Tag)).TotalMilliseconds < 200)//调光命令发送间隔事件 { new System.Threading.Thread(() => { light.brightness = e; Control.Send(CommandType_A.write, function); dimmerControlBar.Tag = DateTime.Now; }) { IsBackground = true }.Start(); } }; dimmerControlBar.MouseUpEventHandler += (sender, e) => { light.brightness = dimmerControlBar.Progress; Control.Send(CommandType_A.write, function); }; } } #endregion #region 窗帘的事件列表 /// /// 加载窗帘控制事件 /// /// /// /// void LoadEvent_ControlCurtain(Button btnStop, Button btnOpen, Button btnClose, Curtain curtain) { btnClose.MouseUpEventHandler = (sender, e) => { btnClose.IsSelected = true; btnStop.IsSelected = false; btnOpen.IsSelected = false; curtain.on_off = "off"; Control.Send(CommandType_A.write, curtain); }; btnStop.MouseDownEventHandler = (sender, e) => { btnStop.IsSelected = true; btnClose.IsSelected = false; btnOpen.IsSelected = false; }; btnStop.MouseUpEventHandler = (sender, e) => { btnOpen.IsSelected = true; btnClose.IsSelected = false; btnStop.IsSelected = false; curtain.on_off = "stop"; Control.Send(CommandType_A.write, curtain); }; btnOpen.MouseUpEventHandler = (sender, e) => { btnOpen.IsSelected = true; btnClose.IsSelected = false; btnStop.IsSelected = false; curtain.on_off = "on"; Control.Send(CommandType_A.write, curtain); }; } #endregion #region 空调事件 #endregion /// /// 控制界面跳转 /// void LoadEvent_DivSkipEvent() { EventHandler eventHandler = (sender, e) => { //跳转到功能信息设置页面 switch (function.functionType) { case FunctionType.Relay: var relayView = new RelayPage(function as Light); MainPage.BasePageView.AddChidren(relayView); relayView.LoadPage(btnCollectionIcon, btnName, btnFromFloor); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; break; case FunctionType.RGB: var rgbView = new RGBPage(function as Light); MainPage.BasePageView.AddChidren(rgbView); rgbView.LoadPage(btnCollectionIcon, btnName, btnFromFloor); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; break; case FunctionType.Dimmer: var dimmerView = new DimmerPage(function as Light); MainPage.BasePageView.AddChidren(dimmerView); dimmerView.LoadPage(btnCollectionIcon, btnName, btnFromFloor); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; break; case FunctionType.MotorCurtain: var skinView = new MotorCurtainPage(function as Curtain); MainPage.BasePageView.AddChidren(skinView); skinView.LoadPage(btnCollectionIcon, btnName, btnFromFloor); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; break; case FunctionType.Curtain: var curtainView = new CurtainModulePage(function as Curtain); MainPage.BasePageView.AddChidren(curtainView); curtainView.LoadPage(btnCollectionIcon, btnName, btnFromFloor); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; break; case FunctionType.RollingShutter: var rollingShutterView = new RollingShutterPage(function as Curtain); MainPage.BasePageView.AddChidren(rollingShutterView); rollingShutterView.LoadPage(btnCollectionIcon, btnName, btnFromFloor); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; break; case FunctionType.AC: var acView = new ACPage(function as AC); MainPage.BasePageView.AddChidren(acView); acView.LoadPage(btnCollectionIcon, btnName, btnFromFloor); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; break; } }; this.MouseUpEventHandler = eventHandler; } } }