wxr
2020-03-19 b69d7735274b8d0f741da8a6bb8b8e1347477a5a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
using System;
using HDL_ON.Entity;
using Shared;
 
namespace HDL_ON.UI
{
    public partial class FunctionControlZone
    {
        /// <summary>
        /// 加载功能收藏按钮事件
        /// </summary>
        void LoadCollectionEvent()
        {
            btnCollectionIcon.MouseUpEventHandler += (sender, e) =>
            {
                btnCollectionIcon.IsSelected = function.collection = !btnCollectionIcon.IsSelected;
                DB_ResidenceData.residenceData.SaveResidenceData();
            };
        }
        #region 灯光的事件列表
 
        /// <summary>
        /// 灯光开关事件
        /// </summary>
        void LoadEvent_LightSwitch(Button btnSwitch)
        {
            btnSwitch.MouseUpEventHandler += (sender, e) =>
            {
                btnSwitch.IsSelected = !btnSwitch.IsSelected;
                new System.Threading.Thread(() =>
                {
                    if (function.functionCategory == FunctionType.Light)
                    {
                        var light = function as Light;
                        light.on_off = btnSwitch.IsSelected ? 1 : 0;
                        Control.Send("write", function);
                    }
                })
                { IsBackground = true }.Start();
            };
        }
 
        /// <summary>
        /// 灯光亮度调节事件
        /// </summary>
        void LoadEvent_LightDimming(DiyImageSeekBar dimmerControlBar)
        {
            if (function.functionType == "Dimmer" || function.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("write", function);
                            dimmerControlBar.Tag = DateTime.Now;
                        })
                        { IsBackground = true }.Start();
                    }
                };
                dimmerControlBar.MouseUpEventHandler += (sender, e) =>
                {
                    light.brightness = dimmerControlBar.Progress;
                    Control.Send("write", function);
                };
            }
        }
        #endregion
 
 
        #region 窗帘的事件列表
 
 
        #endregion
 
        /// <summary>
        /// 控制界面跳转
        /// </summary>
        void LoadEvent_DivSkipEvent()
        {
            EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
            {
                //跳转到功能信息设置页面
                switch (function.functionType)
                {
                    case "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 "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 "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 "MotorCurtain":
                        var skinView = new MotorCurtainPage(function);
                        MainPage.BasePageView.AddChidren(skinView);
                        skinView.LoadPage(btnCollectionIcon, btnName, btnFromFloor);
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        break;
                    case "Curtain":
                        var curtainView = new CurtainModulePage(function);
                        MainPage.BasePageView.AddChidren(curtainView);
                        curtainView.LoadPage(btnCollectionIcon, btnName, btnFromFloor);
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        break;
                    case "AC":
                        var acView = new ACPage(function);
                        MainPage.BasePageView.AddChidren(acView);
                        acView.LoadPage(btnCollectionIcon, btnName, btnFromFloor);
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        break;
                }
            };
            this.MouseUpEventHandler = eventHandler;
        }
    }
}