黄学彪
2020-03-06 a5b3c4bae726ef6770d4bfcbf2f4b50a37ed4a15
ZigbeeApp/Shared/Phone/Device/Logic/TemplateDeviceCondition.cs
@@ -39,14 +39,15 @@
            var titleName = new Button
            {
                TextSize = 16,
                TextSize = 17,
                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
                TextAlignment = TextAlignment.CenterLeft,
                X = Application.GetRealWidth(160),
                Width = Application.GetRealWidth(600),
                Height = Application.GetRealHeight(69),
                Y = Application.GetRealHeight(92),
                TextID = MyInternationalizationString.devicestate,
                TextID = MyInternationalizationString.addsensor,
                IsBold = true,
            };
            topRowLayout.AddChidren(titleName);
@@ -89,6 +90,7 @@
                Y = Application.GetRealHeight(92),
                // TextID = MyInternationalizationString.customroom,
                Text = Config.Instance.Home.GetCurrentFloorName,
                TextSize = 14,
            };
            topRowLayout.AddChidren(foolrname);
            var dropdown = new Button
@@ -105,7 +107,8 @@
            #endregion
            ///没有房间直接返回去;
            if (Common.Room.Lists.Count == 0)
            var listAllRoom = UserCenter.HdlRoomLogic.Current.GetAllListRooms();
            if (listAllRoom.Count == 0)
            {
                return;
            }
@@ -119,15 +122,7 @@
            };
            this.AddChidren(roomhorizontalScrol);
            var devicetypehorizontalScrol1 = new HorizontalScrolViewLayout()
            {
                Width = Application.GetRealWidth(1080 - 58 - 200),
                Height = Application.GetRealHeight(280),
                Y = roomhorizontalScrol.Bottom,
                BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor,
                X = Application.GetRealWidth(58 + 200),
            };
            this.AddChidren(devicetypehorizontalScrol1);
            ///设备类型滑动控件
            var devicetypehorizontalScrol = new HorizontalScrolViewLayout()
            {
@@ -136,18 +131,20 @@
                Y = roomhorizontalScrol.Bottom,
                BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor,
                X = Application.GetRealWidth(58),
                Radius = (uint)Application.GetRealHeight(50),
                //Radius = (uint)Application.GetRealHeight(50),
            };
            this.AddChidren(devicetypehorizontalScrol);
            devicetypehorizontalScrol.SetCornerWithSameRadius(Application.GetRealHeight(58), HDLUtils.RectCornerBottomLeft);
            middle = new VerticalScrolViewLayout();
            middle.Y = devicetypehorizontalScrol.Bottom + Application.GetRealHeight(40);
            middle.Height = Application.GetRealHeight(1920 - 40) - devicetypehorizontalScrol.Bottom;
            middle.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
            middle.X = Application.GetRealWidth(58);
            middle.Radius = (uint)Application.GetRealHeight(50);
           // middle.Radius = (uint)Application.GetRealHeight(50);
            this.AddChidren(middle);
            middle.SetCornerWithSameRadius(Application.GetRealHeight(58), HDLUtils.RectCornerTopLeft);
            ///目前支持的设备
            var deviceTypeList = new List<DeviceType> {
@@ -186,6 +183,7 @@
                    TextColor = ZigbeeColor.Current.LogicTextBlackColor,
                    X = Application.GetRealWidth(80),
                    TextID = MyInternationalizationString.selecfoolr,
                    TextSize = 14,
                };
                foolrbjicon.AddChidren(btnfoolrtext);
@@ -227,6 +225,7 @@
                        TextColor = ZigbeeColor.Current.LogicBtnCancelColor,
                        Tag = foolr.Key,
                        X = btnfoolricon.Right + Application.GetRealWidth(12),
                        TextSize = 14,
                    };
                    foolrRowLayout.AddChidren(btnfoolrname);
                    if (foolrname.Text == foolr.Value)
@@ -264,7 +263,7 @@
                dropdown.Visible = false;
                if (Config.Instance.Home.FloorDics.Count == 0)
                {
                    roomlists.AddRange(Common.Room.Lists);
                    roomlists.AddRange(listAllRoom);
                }
                else
                {
@@ -327,20 +326,33 @@
                    roomTextButton.IsSelected = false;
                    roomTextButton = roomnameBtn;
                    roomnameBtn.IsSelected = true;
                    var list = new List<DeviceUI>();
                    foreach (var device in room.DeviceUIList)
                    roomnameBtn.IsSelected = true;
                    var list = new List<CommonDevice>();
                    foreach (var deviceKeys in room.ListDevice)
                    {
                        if (device.CommonDevice == null)
                        var device = LocalDevice.Current.GetDevice(deviceKeys);
                        if (device == null)
                        {
                            continue;
                        }
                        if (!deviceTypeList.Contains(device.CommonDevice.Type))
                        if (!deviceTypeList.Contains(device.Type))
                        {
                            continue;
                        }
                        list.Add(device);
                    }
                    if (list.Count == 0)
                    {
                        devicetypehorizontalScrol.Height = 0;
                        middle.Height = 0;
                    }
                    else
                    {
                        devicetypehorizontalScrol.Height = Application.GetRealHeight(280);
                        middle.Height = Application.GetRealHeight(1920 - 40) - devicetypehorizontalScrol.Bottom;
                    }
                    AllDeviceTypeView(list, devicetypehorizontalScrol);
@@ -357,20 +369,33 @@
                    roomTextButton.IsSelected = false;
                    roomTextButton = roomnameBtn;
                    roomnameBtn.IsSelected = true;
                    var list = new List<DeviceUI>();
                    foreach (var device in room.DeviceUIList)
                    roomnameBtn.IsSelected = true;
                    var list = new List<CommonDevice>();
                    foreach (var deviceKeys in room.ListDevice)
                    {
                        if (device.CommonDevice == null)
                        var device = LocalDevice.Current.GetDevice(deviceKeys);
                        if (device == null)
                        {
                            continue;
                        }
                        if (!deviceTypeList.Contains(device.CommonDevice.Type))
                        if (!deviceTypeList.Contains(device.Type))
                        {
                            continue;
                        }
                        list.Add(device);
                    }
                    if (list.Count == 0)
                    {
                        devicetypehorizontalScrol.Height = 0;
                        middle.Height = 0;
                    }
                    else
                    {
                        devicetypehorizontalScrol.Height = Application.GetRealHeight(280);
                        middle.Height = Application.GetRealHeight(1920 - 40) - devicetypehorizontalScrol.Bottom;
                    }
                    AllDeviceTypeView(list, devicetypehorizontalScrol);
@@ -385,34 +410,34 @@
        /// 加载该区域所有设备视图方法
        /// </summary>0
        /// <param name="devicelist">Devicelist.</param>
        void AllDeviceTypeView(List<DeviceUI> devicelist, HorizontalScrolViewLayout devicetypehorizontalScrol)
        void AllDeviceTypeView(List<CommonDevice> devicelist, HorizontalScrolViewLayout devicetypehorizontalScrol)
        {
            List<string> devicetypelist = new List<string>();
            devicetypelist.Clear();
            #region  ------排列设备类型------
            ///暂时隐藏灯光和窗帘设备
            var lightjosn = devicelist.Find((device) => device.CommonDevice.Type == DeviceType.ColorDimmableLight || device.CommonDevice.Type == DeviceType.OnOffOutput);
            var lightjosn = devicelist.Find((device) => device.Type == DeviceType.ColorDimmableLight || device.Type == DeviceType.OnOffOutput);
            if (lightjosn != null)
            {
                devicetypelist.Add(Language.StringByID(MyInternationalizationString.Lights));
            }
            var curtainjosn = devicelist.Find((device) => device.CommonDevice.Type == DeviceType.WindowCoveringDevice);
            var curtainjosn = devicelist.Find((device) => device.Type == DeviceType.WindowCoveringDevice);
            if (curtainjosn != null)
            {
                devicetypelist.Add(Language.StringByID(MyInternationalizationString.Curtains));
            }
            var iASZonejosn = devicelist.Find((device) => device.CommonDevice.Type == DeviceType.IASZone);
            var iASZonejosn = devicelist.Find((device) => device.Type == DeviceType.IASZone);
            if (iASZonejosn != null)
            {
                devicetypelist.Add(Language.StringByID(MyInternationalizationString.sensor));
            }
            var onOffSwitchjson = devicelist.Find((device) => device.CommonDevice.Type == DeviceType.OnOffSwitch);
            var onOffSwitchjson = devicelist.Find((device) => device.Type == DeviceType.OnOffSwitch);
            if (onOffSwitchjson != null)
            {
                devicetypelist.Add(Language.StringByID(MyInternationalizationString.OnOffSwitch));
            }
            var doorLock = devicelist.Find((device) => device.CommonDevice.Type == DeviceType.DoorLock);
            var doorLock = devicelist.Find((device) => device.Type == DeviceType.DoorLock);
            if (doorLock != null)
            {
                devicetypelist.Add(Language.StringByID(MyInternationalizationString.doorLock));
@@ -546,20 +571,20 @@
        /// </summary>
        /// <param name="deviceTypelist">Device typelist.</param>
        /// <param name="devicelist">设备列表</param>
        void ConditionDeviceView(List<DeviceType> deviceTypelist, List<DeviceUI> devicelist)
        void ConditionDeviceView(List<DeviceType> deviceTypelist, List<CommonDevice> devicelist)
        {
            middle.RemoveAll();
            foreach (var common in devicelist)
            {
                if (deviceTypelist.Count != 0 && !deviceTypelist.Contains(common.CommonDevice.Type))
                if (deviceTypelist.Count != 0 && !deviceTypelist.Contains(common.Type))
                {
                    continue;
                }
                if (common.CommonDevice.Type == DeviceType.IASZone)
                if (common.Type == DeviceType.IASZone)
                {
                    var iASZonedevice = common.CommonDevice as IASZone;
                    var iASZonedevice = common as IASZone;
                    if (iASZonedevice.DeviceID != 1026 || iASZonedevice.IasDeviceType != 13)
                    {
                        continue;
@@ -605,13 +630,14 @@
                var devicename = new Button
                {
                    Text = common.CommonDevice.DeviceEpointName,
                    Text = common.DeviceEpointName,
                    TextAlignment = TextAlignment.CenterLeft,
                    TextColor = ZigbeeColor.Current.LogicTextBlackColor,
                    SelectedTextColor = ZigbeeColor.Current.LogicAddColor,
                    TextSize = 14,
                };
                deviceRow.AddChidren(devicename);
                switch (common.CommonDevice.Type)
                switch (common.Type)
                {
                    case DeviceType.OnOffOutput:
                        {
@@ -621,7 +647,7 @@
                        break;
                    case DeviceType.IASZone:
                        {
                            var iASZonedevice = common.CommonDevice as IASZone;
                            var iASZonedevice = common as IASZone;
                            if (iASZonedevice.DeviceID != 1026)
                            {
                                break;
@@ -659,7 +685,7 @@
                    devicename.IsSelected = true;
                    var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor };
                    this.AddChidren(flMain);
                    CurrentDeviceView(flMain, common.CommonDevice, false);
                    CurrentDeviceView(flMain, common, false);
                };
                deviceFramelayout.MouseUpEventHandler += devicclick;
                bjFramelayout.MouseUpEventHandler += devicclick;
@@ -693,14 +719,6 @@
            };
            var devicefra1 = new FrameLayout
            {
                Width = Application.GetRealWidth(1080),
                Height = Application.GetRealHeight(100),
                Y = Application.GetRealHeight(1920 - 100),
                BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor,
            };
            flMain.AddChidren(devicefra1);
            var devicefra = new FrameLayout
            {
@@ -712,6 +730,7 @@
                Radius = (uint)Application.GetRealHeight(60),
            };
            flMain.AddChidren(devicefra);
            devicefra.SetCornerWithSameRadius(Application.GetRealHeight(58), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight);
            #region  -------取消   完成
            var timetype = new RowLayout
@@ -728,6 +747,7 @@
                Width = Application.GetRealWidth(200),
                X = Application.GetRealWidth(80),
                TextAlignment = TextAlignment.CenterLeft,
                TextSize = 14,
            };
            timetype.AddChidren(Btncancel);
            Btncancel.MouseUpEventHandler += (sender16, e16) =>
@@ -756,6 +776,7 @@
                Width = Application.GetRealWidth(200),
                TextAlignment = TextAlignment.CenterRight,
                X = Btntitle.Right + Application.GetRealWidth(50),
                TextSize = 14,
            };
            timetype.AddChidren(Btncomplete);
@@ -781,254 +802,6 @@
            }
            switch (common.Type)
            {
                ///灯光
                case DeviceType.OnOffOutput:
                    {
                        dictionary(deviceConditionsInfo, "Cluster_ID", "6");
                        dictionary(deviceConditionsInfo, "AttriButeId", "0");
                        dictionary(deviceConditionsInfo, "Range", "1");
                        dictionary(deviceConditionsInfo, "AttriButeData2", "0");
                        #region  灯光View
                        var openframelayout = new FrameLayout
                        {
                            Height = Application.GetRealHeight(160),
                            Y = timetype.Bottom + Application.GetRealHeight(20),
                        };
                        devicefra.AddChidren(openframelayout);
                        var openrowlayout = new RowLayout
                        {
                            Y = Application.GetRealHeight(30),
                            Width = Application.GetRealWidth(920),
                            Height = Application.GetRealHeight(130),
                            X = Application.GetRealWidth(80),
                            LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
                        };
                        openframelayout.AddChidren(openrowlayout);
                        var btnopen = new Button
                        {
                            Width = Application.GetRealWidth(600),
                            TextID = MyInternationalizationString.open,
                            TextAlignment = TextAlignment.CenterLeft,
                            TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
                        };
                        openrowlayout.AddChidren(btnopen);
                        var openBtnSelected = new SelectedButton();
                        openrowlayout.AddChidren(openBtnSelected);
                        var closeframelayout = new FrameLayout
                        {
                            Height = Application.GetRealHeight(160),
                            Y = openframelayout.Bottom,
                        };
                        devicefra.AddChidren(closeframelayout);
                        var closerowlayout = new RowLayout
                        {
                            Y = Application.GetRealHeight(30),
                            Width = Application.GetRealWidth(920),
                            Height = Application.GetRealHeight(130),
                            X = Application.GetRealWidth(80),
                            LineColor = ZigbeeColor.Current.LogicBackgroundColor,
                        };
                        closeframelayout.AddChidren(closerowlayout);
                        var btnclose = new Button
                        {
                            //Text = "关",
                            TextID = MyInternationalizationString.close,
                            Width = Application.GetRealWidth(600),
                            TextAlignment = TextAlignment.CenterLeft,
                            TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
                        };
                        closerowlayout.AddChidren(btnclose);
                        var closeBtnSelected = new SelectedButton();
                        closerowlayout.AddChidren(closeBtnSelected);
                        #endregion
                        ///点击确认事件
                        EventHandler<MouseEventArgs> openclick = (sender, e) =>
                        {
                            openBtnSelected.Visible = true;
                            closeBtnSelected.Visible = false;
                            btnopen.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                            btnclose.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
                            SelectedDeviceStatuscondition = "OnOffOutput";
                            dictionary(deviceConditionsInfo, "AttriButeData1", "1");//默认值
                        };
                        openrowlayout.MouseUpEventHandler += openclick;
                        btnopen.MouseUpEventHandler += openclick;
                        openBtnSelected.MouseUpEventHandler += openclick;
                        openframelayout.MouseUpEventHandler += openclick;
                        ///点击取消事件
                        EventHandler<MouseEventArgs> closeclick = (sender, e) =>
                        {
                            btnopen.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
                            btnclose.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                            openBtnSelected.Visible = false;
                            closeBtnSelected.Visible = true;
                            SelectedDeviceStatuscondition = "OnOffOutput";
                            dictionary(deviceConditionsInfo, "AttriButeData1", "0");//默认值
                        };
                        closerowlayout.MouseUpEventHandler += closeclick;
                        btnclose.MouseUpEventHandler += closeclick;
                        closeBtnSelected.MouseUpEventHandler += closeclick;
                        closeframelayout.MouseUpEventHandler += closeclick;
                        if (edit && devices != null)
                        {
                            if (devices["AttriButeId"] == "0")
                            {
                                if (devices["AttriButeData1"] == "1")
                                {
                                    btnopen.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                                    btnclose.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
                                    openBtnSelected.Visible = true;
                                    closeBtnSelected.Visible = false;
                                }
                                else
                                {
                                    btnopen.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
                                    btnclose.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                                    openBtnSelected.Visible = false;
                                    closeBtnSelected.Visible = true;
                                }
                            }
                        }
                    }
                    break;
                case DeviceType.WindowCoveringDevice:
                    {
                        dictionary(deviceConditionsInfo, "Cluster_ID", "258");
                        dictionary(deviceConditionsInfo, "AttriButeId", "8");
                        dictionary(deviceConditionsInfo, "Range", "0");
                        dictionary(deviceConditionsInfo, "AttriButeData2", "0");
                        #region 窗帘View
                        devicefra.Y = Application.GetRealHeight(1920 - 30 - 720);
                        devicefra.Height = Application.GetRealHeight(720);
                        var windowCoveringfra = new FrameLayout
                        {
                            Y = Application.GetRealHeight(180),
                            Height = Application.GetRealHeight(180 * 2 + 30),
                        };
                        devicefra.AddChidren(windowCoveringfra);
                        var openrowlayout = new RowLayout
                        {
                            Height = Application.GetRealHeight(180),
                        };
                        windowCoveringfra.AddChidren(openrowlayout);
                        var btnopen = new Button
                        {
                            //Text = "开",
                            TextID = MyInternationalizationString.open,
                            TextAlignment = TextAlignment.CenterLeft,
                            X = Application.GetRealWidth(50),
                            Width = Application.GetRealWidth(300),
                            Height = Application.GetRealHeight(180),
                            //SelectedBackgroundColor = 0xfffe5e00,
                            TextColor = ZigbeeColor.Current.LogicTextBlackColor,
                        };
                        openrowlayout.AddChidren(btnopen);
                        var openBtnSelected = new Button
                        {
                            X = Application.GetRealWidth(1000 - 150),
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            UnSelectedImagePath = "Item/YesSelected.png",
                            Visible = false,
                            Gravity = Gravity.CenterVertical
                        };
                        openrowlayout.AddChidren(openBtnSelected);
                        var closerowlayout = new RowLayout
                        {
                            Y = openrowlayout.Bottom,
                            Height = Application.GetRealHeight(180),
                        };
                        windowCoveringfra.AddChidren(closerowlayout);
                        var btnclose = new Button
                        {
                            //Text = "关",
                            TextID = MyInternationalizationString.close,
                            TextAlignment = TextAlignment.CenterLeft,
                            X = Application.GetRealWidth(50),
                            Width = Application.GetRealWidth(300),
                            Height = Application.GetRealHeight(180),
                            TextColor = ZigbeeColor.Current.LogicTextBlackColor,
                        };
                        closerowlayout.AddChidren(btnclose);
                        var closeBtnSelected = new Button
                        {
                            X = Application.GetRealWidth(1000 - 150),
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            UnSelectedImagePath = "Item/YesSelected.png",
                            Visible = false,
                            Gravity = Gravity.CenterVertical
                        };
                        closerowlayout.AddChidren(closeBtnSelected);
                        #endregion
                        ///点击确认事件
                        EventHandler<MouseEventArgs> openclick = (sender, e) =>
                        {
                            SelectedDeviceStatuscondition = "WindowCoveringDevice";
                            openBtnSelected.Visible = true;
                            closeBtnSelected.Visible = false;
                            dictionary(deviceConditionsInfo, "AttriButeData1", "95");//默认值
                        };
                        openrowlayout.MouseUpEventHandler += openclick;
                        btnopen.MouseUpEventHandler += openclick;
                        openBtnSelected.MouseUpEventHandler += openclick;
                        ///点击取消事件
                        EventHandler<MouseEventArgs> closeclick = (sender, e) =>
                        {
                            SelectedDeviceStatuscondition = "WindowCoveringDevice";
                            openBtnSelected.Visible = false;
                            closeBtnSelected.Visible = true;
                            dictionary(deviceConditionsInfo, "AttriButeData1", "5");//默认值
                        };
                        closerowlayout.MouseUpEventHandler += closeclick;
                        btnclose.MouseUpEventHandler += closeclick;
                        closeBtnSelected.MouseUpEventHandler += closeclick;
                        if (edit && devices != null)
                        {
                            if (devices["AttriButeId"] == "8")
                            {
                                if (int.Parse(devices["AttriButeData1"]) > 5)
                                {
                                    openBtnSelected.Visible = true;
                                    closeBtnSelected.Visible = false;
                                }
                                else
                                {
                                    openBtnSelected.Visible = false;
                                    closeBtnSelected.Visible = true;
                                }
                            }
                        }
                    }
                    break;
                case DeviceType.IASZone:
                    {
@@ -1067,6 +840,7 @@
                            TextID = MyInternationalizationString.open,
                            TextAlignment = TextAlignment.CenterLeft,
                            TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
                            TextSize = 14,
                        };
                        openrowlayout.AddChidren(btnopen);
@@ -1097,6 +871,7 @@
                            Width = Application.GetRealWidth(600),
                            TextAlignment = TextAlignment.CenterLeft,
                            TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
                            TextSize = 14,
                        };
                        closerowlayout.AddChidren(btnclose);
@@ -1140,12 +915,12 @@
                            dictionary(deviceConditionsInfo, "AttriButeData1", "0");
                            if (iASZonedevice.IasDeviceType == 13)
                            {
                                SelectedDeviceStatuscondition = "no";
                                SelectedDeviceStatuscondition = "";
                                btnopen.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
                                btnclose.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
                                openBtnSelected.Visible = false;
                                closeBtnSelected.Visible = true;
                                var ignoreTime = new IgnoreTime();
                                var ignoreTime = new TemplateIgnore();
                                UserView.HomePage.Instance.AddChidren(ignoreTime);
                                UserView.HomePage.Instance.PageIndex += 1;
                                ignoreTime.Show(common, btnclose.Text, edit, timevalue);
@@ -1222,12 +997,12 @@
                                    timeoutrowlayout.AddChidren(timeoutBtnSelected);
                                    EventHandler<MouseEventArgs> timeoutclick = (sender, e) =>
                                    {
                                        SelectedDeviceStatuscondition = "no";
                                        SelectedDeviceStatuscondition = "";
                                        btnopen.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
                                        btnclose.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
                                        openBtnSelected.Visible = false;
                                        closeBtnSelected.Visible = false;
                                        var ignoreTime = new IgnoreTime();
                                        var ignoreTime = new TemplateIgnore();
                                        UserView.HomePage.Instance.AddChidren(ignoreTime);
                                        UserView.HomePage.Instance.PageIndex += 1;
                                        ignoreTime.Show(common, btntimeout.Text, edit, timevalue);
@@ -1241,7 +1016,6 @@
                                    #endregion
                                }
                                break;
                            case 40:
                                {
                                    devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 - 20 - 50);
@@ -1281,7 +1055,6 @@
                                    openrowlayout.LineColor = ZigbeeColor.Current.LogicBackgroundColor;
                                }
                                break;
                            case 277:
                                {
                                    devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 - 20 - 50);
@@ -1334,75 +1107,6 @@
                    }
                    break;
                case DeviceType.OnOffSwitch:
                    {
                        dictionary(deviceConditionsInfo, "Cluster_ID", "1282");
                        dictionary(deviceConditionsInfo, "AttriButeId", "1283");
                        dictionary(deviceConditionsInfo, "Range", "0");//按键特殊
                        dictionary(deviceConditionsInfo, "AttriButeData1", "0");
                        dictionary(deviceConditionsInfo, "AttriButeData2", "0");
                        devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 - 20 - 50);
                        devicefra.Height = Application.GetRealHeight(140 + 160 + 20 + 50);
                        var OnOffOutputfra = new FrameLayout
                        {
                            Height = Application.GetRealHeight(160),
                            Y = timetype.Bottom + Application.GetRealHeight(20),
                        };
                        devicefra.AddChidren(OnOffOutputfra);
                        var buttonRow = new RowLayout
                        {
                            Y = Application.GetRealHeight(30),
                            Width = Application.GetRealWidth(920),
                            Height = Application.GetRealHeight(130),
                            X = Application.GetRealWidth(80),
                            LineColor = ZigbeeColor.Current.LogicBackgroundColor,
                        };
                        OnOffOutputfra.AddChidren(buttonRow);
                        var button = new Button
                        {
                            Width = Application.GetRealWidth(600),
                            TextAlignment = TextAlignment.CenterLeft,
                            TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
                            Text = Language.StringByID(MyInternationalizationString.OnOffSwitch) + common.DeviceEpoint.ToString(),
                            //SelectedBackgroundColor = 0xfffe5e00,
                        };
                        buttonRow.AddChidren(button);
                        var buttonSelected = new SelectedButton();
                        buttonRow.AddChidren(buttonSelected);
                        EventHandler<MouseEventArgs> buttonclick = (sender, e) =>
                        {
                            buttonSelected.Visible = true;
                            SelectedDeviceStatuscondition = "OnOffSwitch";
                            button.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                        };
                        buttonRow.MouseUpEventHandler += buttonclick;
                        button.MouseUpEventHandler += buttonclick;
                        buttonSelected.MouseUpEventHandler += buttonclick;
                        OnOffOutputfra.MouseUpEventHandler += buttonclick;
                        if (edit && devices != null)
                        {
                            buttonSelected.Visible = true;
                            button.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                        }
                    }
                    break;
                case DeviceType.DoorLock:
                    {
                        var memberList = new MemberList();
                        UserView.HomePage.Instance.AddChidren(memberList);
                        UserView.HomePage.Instance.PageIndex += 1;
                        MemberList.action += () => { flMain.RemoveFromParent(); };
                        memberList.Show(common);
                    }
                    break;
            }
@@ -1417,9 +1121,9 @@
                {
                    if (!edit)
                    {
                        var alert = new Alert(Language.StringByID(MyInternationalizationString.Prompt),
                                               Language.StringByID(MyInternationalizationString.selectdevicestatuscondition),
                                               Language.StringByID(MyInternationalizationString.complete));
                        var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal,
                         Language.StringByID(MyInternationalizationString.selectdevicestatuscondition),
                         Language.StringByID(MyInternationalizationString.confrim));
                        alert.Show();
                        return;
                    }