using System; using HDL_ON.Entity; using Shared; namespace HDL_ON.UI { public partial class HomePage { /// /// 修改显示的功能类型 /// 设备功能/场景功能 /// void LoadEvent_ChangeShowedFunctionType() { btnChangeFunction.MouseUpEventHandler = (sender, e) => { btnChangeFunction.IsSelected = true; btnChangeFunction.TextSize = CSS.CSS_FontSize.HeadlineFontSize; btnChangeFunction.IsBold = true; btnChangeScene.TextSize = CSS.CSS_FontSize.TextFontSize; btnChangeScene.IsSelected = false; btnChangeScene.IsBold = false; CurShowTypeIsFunction = true; contentView.PageIndex = 0; }; btnChangeScene.MouseUpEventHandler = (sender, e) => { btnChangeScene.IsSelected = true; btnChangeScene.TextSize = CSS.CSS_FontSize.HeadlineFontSize; btnChangeScene.IsBold = true; btnChangeFunction.TextSize = CSS.CSS_FontSize.TextFontSize; btnChangeFunction.IsSelected = false; btnChangeFunction.IsBold = false; CurShowTypeIsFunction = false; contentView.PageIndex = 1; }; contentView.PageChange = (sender, e) => { if (contentView.PageIndex == 0) { btnChangeFunction.IsSelected = true; btnChangeFunction.TextSize = CSS.CSS_FontSize.HeadlineFontSize; btnChangeFunction.IsBold = true; btnChangeScene.TextSize = CSS.CSS_FontSize.TextFontSize; btnChangeScene.IsSelected = false; btnChangeScene.IsBold = false; CurShowTypeIsFunction = true; } else { btnChangeScene.IsSelected = true; btnChangeScene.TextSize = CSS.CSS_FontSize.HeadlineFontSize; btnChangeScene.IsBold = true; btnChangeFunction.TextSize = CSS.CSS_FontSize.TextFontSize; btnChangeFunction.IsSelected = false; btnChangeFunction.IsBold = false; CurShowTypeIsFunction = false; } }; } /// /// 更新灯光显示状态 /// public static void UpdataFunctionStates(Function function) { Application.RunOnMainThread(() => { try { if (bodyView != null) { foreach (var view in bodyView.functionViews) { if (view.Tag.ToString() == function.sid) { var state = function.on_off == "on"; for (int i = 0; i < view.ChildrenCount; i++) { if (view.GetChildren(i).GetType() == typeof(Button)) { var btn = view.GetChildren(i) as Button; btn.IsSelected = state; if (btn.Tag != null && btn.Tag.ToString() == "state") { btn.Text = function.lastState; } } } } } } } catch (Exception ex) { MainPage.Log($"HomePage updata funciton states error {ex.Message}"); } }); } /// /// 加载场景控制事件 /// /// void LoadEvent_ControlScene(Button btnCoverd ,Function function) { btnCoverd.MouseDownEventHandler = (sender, e) => { btnCoverd.IsSelected = true; }; btnCoverd.MouseUpEventHandler = (sender, e) => { Control.Send(function as Scene); new System.Threading.Thread(() => { System.Threading.Thread.Sleep(200); Application.RunOnMainThread(() => { btnCoverd.IsSelected = false; }); }) { IsBackground = true }.Start(); }; } /// /// 加载灯光开关事件 /// /// /// void LoadEvent_SwitchFunction(Function function, 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(); }; } /// /// 加载窗帘控制事件 /// void LoadEvent_ControlCurtain(Curtain curtain, Button btnClose, Button btnOpen) { btnClose.MouseDownEventHandler = (sender, e) => { btnClose.IsSelected = true; }; btnClose.MouseUpEventHandler = (sender, e) => { btnClose.IsSelected = false; curtain.on_off = "off"; Control.Send(CommandType_A.write, curtain); }; btnOpen.MouseDownEventHandler = (sender, e) => { btnOpen.IsSelected = true; }; btnOpen.MouseUpEventHandler = (sender, e) => { btnOpen.IsSelected = false; curtain.on_off = "on"; Control.Send(CommandType_A.write, curtain); }; } } }