黄学彪
2019-10-10 2ed75b8b337048e5d75e6d9ec8307633134f02fd
ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs
@@ -1,7 +1,9 @@
using System;
using System.Collections.Generic;
using Shared.Common;
using Shared.Phone.Device.AC;
using ZigBee.Device;
using Shared.Phone.Device.CommonForm;
namespace Shared.Phone.UserView
{
@@ -33,9 +35,9 @@
        /// </summary>
        private static readonly int topFrameLayout_Height = 500;
        /// <summary>
        /// The height of the middle view.-- 1920-500-160
        /// 1524
        /// </summary>
        private static readonly int midView_Height = CommonPage.AppRealHeight - topFrameLayout_Height - CommonPage.TabbarHeight;
        private static readonly int midView_Height = 1524;
        /// <summary>
        /// The height of the room page view. -- 550
        /// </summary>
@@ -229,6 +231,17 @@
                                    break;
                                case DeviceType.WindowCoveringDevice:
                                    if ((common as Rollershade).DeviceStatusReport.CluterID == 258)
                                    {
                                        if ((common as Rollershade).DeviceStatusReport.AttriBute[0].AttributeId == 0)
                                        {
                                            //窗帘类型
                                            var rollerShade = deviceUI.CommonDevice as Rollershade;
                                            rollerShade.DeviceStatusReport = (common as Rollershade).DeviceStatusReport;
                                            rollerShade.WcdType = (common as Rollershade).DeviceStatusReport.AttriBute[0].AttriButeData;
                                            rollerShade.LastDateTime = DateTime.Now;
                                        }
                                    }
                                    if ((common as ZigBee.Device.Rollershade).DeviceStatusReport.CluterID == 3)
                                    {
                                        var rollershade = deviceUI.CommonDevice as ZigBee.Device.Rollershade;
@@ -265,11 +278,34 @@
                                        {
                                            case 0:
                                                //此属性表明室内当前的温度 * 100,实际温度为“LocalTemperature / 100”,单位:℃
                                                ac.currentLocalTemperature = attriButeList[0].AttriButeData / 100;
                                                ac.currentLocalTemperature = (attriButeList[0].AttriButeData / 100 > ACControlBase.Temperature_High || attriButeList[0].AttriButeData / 100 < ACControlBase.Temperature_Low) ? attriButeList[0].AttriButeData / 100 : ACControlBase.Temperature_Default;
                                                ac.LastDateTime = DateTime.Now;
                                                //indoorTemperatureBtn.Text = $"室温 {ac.currentLocalTemperature} ℃";
                                                //currentTemperatureBtn.Text = $"{ac.currentLocalTemperature} ℃";
                                                //Temparetrue
                                                break;
                                            case 17:
                                                //此属性表明此设备当前的制冷温度,实际温度为“CoolingSetpoint / 100”,单位:℃。
                                                ac.currentCoolingSetpoint = (attriButeList[0].AttriButeData / 100 > ACControlBase.Temperature_High || attriButeList[0].AttriButeData / 100 < ACControlBase.Temperature_Low) ? attriButeList[0].AttriButeData / 100 : ACControlBase.Temperature_Default;
                                                ac.LastDateTime = DateTime.Now;
                                                break;
                                            case 18:
                                                //此属性表明此设备当前的制热温度,实际温度为“HeatingSetpoint / 100”,单位:℃。
                                                ac.currentHeatingSetpoint = (attriButeList[0].AttriButeData / 100 > ACControlBase.Temperature_High || attriButeList[0].AttriButeData / 100 < ACControlBase.Temperature_Low) ? attriButeList[0].AttriButeData / 100 : ACControlBase.Temperature_Default;
                                                ac.LastDateTime = DateTime.Now;
                                                break;
                                            case 4096:
                                                //此属性表明此设备当前的自动温度,实际温度为“AutoSetpoint / 100”,单位:℃。
                                                ac.currentAutoSetpoint = (attriButeList[0].AttriButeData / 100 > ACControlBase.Temperature_High || attriButeList[0].AttriButeData / 100 < ACControlBase.Temperature_Low) ? attriButeList[0].AttriButeData / 100 : ACControlBase.Temperature_Default;
                                                ac.LastDateTime = DateTime.Now;
                                                break;
                                            case 28:
                                                //此属性描述恒温设备正处于哪种模式
                                                //Off = 0  Auto = 1 Cool = 3 Heat = 4 FanOnly = 7  Dry = 8
                                                ac.currentSystemMode = attriButeList[0].AttriButeData;
                                                ac.LastDateTime = DateTime.Now;
                                                for (int j = 0; j < frameLayout.ChildrenCount; j++)
                                                {
                                                    var tempView = frameLayout.GetChildren(j);
@@ -280,42 +316,16 @@
                                                    if (tempView.Tag.ToString() == "Temparetrue")
                                                    {
                                                        (tempView as Button).Text = $"{ac.currentLocalTemperature} ℃";
                                                        (tempView as Button).Text = $"{ACControlBase.GetCurrentModeTemperature(ac)} ℃";
                                                    }
                                                }
                                                break;
                                            case 17:
                                                //此属性表明此设备当前的制冷温度,实际温度为“CoolingSetpoint / 100”,单位:℃。
                                                ac.currentCoolingSetpoint = attriButeList[0].AttriButeData / 100;
                                                ac.LastDateTime = DateTime.Now;
                                                break;
                                            case 18:
                                                //此属性表明此设备当前的制热温度,实际温度为“HeatingSetpoint / 100”,单位:℃。
                                                ac.currentHeatingSetpoint = attriButeList[0].AttriButeData / 100;
                                                ac.LastDateTime = DateTime.Now;
                                                break;
                                            case 28:
                                                //此属性描述恒温设备正处于哪种模式
                                                //Off = 0  Auto = 1 Cool = 3 Heat = 4 FanOnly = 7  Dry = 8
                                                ac.currentSystemMode = attriButeList[0].AttriButeData;
                                                ac.LastDateTime = DateTime.Now;
                                                for (int j = 0; j < frameLayout.ChildrenCount; j++)
                                                {
                                                    var tempView = frameLayout.GetChildren(j);
                                                    if (tempView.Tag == null)
                                                    {
                                                        continue;
                                                    }
                                                    if (tempView.Tag.ToString() == deviceStatus_OnOffStatus)
                                                    {
                                                        (tempView as Button).IsSelected = ac.currentSystemMode != 0;
                                                    }
                                                }
                                                break;
                                        }
@@ -600,7 +610,7 @@
        public UserHomeView()
        {
            ZbGateway.StatusList.Add(this);
            BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor;
            BackgroundColor = ZigbeeColor.Current.GXCGrayBackgroundColor;
        }
        /// <summary>
@@ -608,55 +618,83 @@
        /// </summary>
        public void Show()
        {
            this.RemoveAll();
            #region topview
            var topFrameLayout = new FrameLayout()
            {
                Height = Application.GetRealHeight(topFrameLayout_Height),
                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                Y=Application.GetRealHeight(60),
                Height = Application.GetRealHeight(127),
                BackgroundColor = ZigbeeColor.Current.GXCGrayBackgroundColor,
            };
            this.AddChidren(topFrameLayout);
            AddChidren(topFrameLayout);
            var homeBtn = new Device.CommonForm.SelectedStatuButton()
            var floor = new Button
            {
                Y = Application.GetRealHeight(100),
                X = Application.GetRealWidth(50),
                Width = Application.GetMinRealAverage(110),
                Height = Application.GetMinRealAverage(110),
                UnSelectedImagePath = "Item/MyHome.png",
                X = Application.GetRealWidth(CommonFormResouce.X_Left),
                Width = Application.GetMinRealAverage(69),
                Height = Application.GetMinRealAverage(69),
                Gravity = Gravity.CenterVertical,
                UnSelectedImagePath = "Item/Floor.png"
            };
            topFrameLayout.AddChidren(homeBtn);
            topFrameLayout.AddChidren(floor);
            var residecneName = new Button()
            var floorBtn = new Button
            {
                Y = Application.GetRealHeight(100),
                Width = Application.GetRealWidth(600),
                Height = Application.GetRealHeight(110),
                TextAlignment = TextAlignment.Center,
                Text = Config.Instance.Home.Name ?? Language.StringByID(R.MyInternationalizationString.TheResidenceNameNull),
                TextSize = 20,
                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                Gravity = Gravity.CenterHorizontal
                X=floor.Right,
                Width=Application.GetRealWidth(500),
                Height=Application.GetRealHeight(100),
                Gravity = Gravity.CenterVertical,
                TextAlignment =TextAlignment.CenterLeft,
                TextColor=ZigbeeColor.Current.GXCTextColor,
                Text=Config.Instance.Home.GetCurrentFloorName()
            };
            topFrameLayout.AddChidren(residecneName);
            topFrameLayout.AddChidren(floorBtn);
            var messageBtn = new Button()
            {
                X = Application.GetRealWidth(CommonPage.AppRealWidth - 150),
                Y = Application.GetRealHeight(100),
                Width = Application.GetMinRealAverage(110),
                Height = Application.GetMinRealAverage(110),
                UnSelectedImagePath = "Item/Message.png"
                X = Application.GetRealWidth(953),
                Width = Application.GetMinRealAverage(69),
                Height = Application.GetMinRealAverage(69),
                Gravity = Gravity.CenterVertical,
                UnSelectedImagePath = "Item/Message.png",
                SelectedImagePath="Item/MessageSelected.png"
            };
            //暂时隐藏
            //topFrameLayout.AddChidren(messageBtn);
            topFrameLayout.AddChidren(messageBtn);
            //切换住宅
            homeBtn.MouseUpEventHandler += (send, e) =>
            var residecneName = new Button()
            {
                X=Application.GetRealWidth(CommonFormResouce.X_Left),
                Y = Application.GetRealHeight(161),
                Width = Application.GetRealWidth(700),
                Height = Application.GetRealHeight(95),
                TextAlignment = TextAlignment.CenterLeft,
                Text = Config.Instance.Home.Name ?? Language.StringByID(R.MyInternationalizationString.TheResidenceNameNull),
                TextSize = 24,
                TextColor = ZigbeeColor.Current.GXCTextBlackColor
            };
            if(Config.Instance.Home.IsOthreShare)
            {
                residecneName.Text = $"({Language.StringByID(R.MyInternationalizationString.Shared)}){Config.Instance.Home.Name}";
            }
            AddChidren(residecneName);
            EventHandler<MouseEventArgs> selectFloor = (send, e) =>
              {
                  var floorFL = new Phone.Device.Category.SelectFloor();
                  AddChidren(floorFL);
                  floorFL.Init(35,153);
                  floorFL.FloorAction = (floorName) =>
                  {
                      floorBtn.Text = floorName;
                  };
              };
            floor.MouseUpEventHandler += selectFloor;
            floorBtn.MouseUpEventHandler += selectFloor;
            //切换住宅
            residecneName.MouseLongEventHandler += (send, e) =>
            {
                var tempHomeBtn = send as Button;
                if (Config.Instance.HomeFilePathList.Count == 0)
                {
                    var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.CurrentlyTheUserIshHouseIsEmptyPleaseBuildANewHouseFirst), Language.StringByID(R.MyInternationalizationString.Close), Language.StringByID(R.MyInternationalizationString.OK));
@@ -680,21 +718,22 @@
                        residenceListView.Close();
                    };
                    var upperTriangleBtn = new Button()
                    var bg = new Button
                    {
                        X = Application.GetRealWidth(25) + homeBtn.X,
                        Y = homeBtn.Bottom,
                        Width = Application.GetMinRealAverage(30),
                        Height = Application.GetMinRealAverage(15),
                        UnSelectedImagePath = "Item/UpperTriangle.png"
                        X = Application.GetRealWidth(35),
                        Y = Application.GetRealHeight(248),
                        Width = Application.GetMinRealAverage(449),
                        Height = Application.GetMinRealAverage(478),
                        UnSelectedImagePath = "Item/SelectHouse"
                    };
                    closeBGview.AddChidren(upperTriangleBtn);
                    closeBGview.AddChidren(bg);
                    var changeHomeFL = new FrameLayout()
                    {
                        X = Application.GetRealWidth(25),
                        Y = upperTriangleBtn.Bottom,
                        Height = Application.GetRealHeight(340),
                        Width = Application.GetRealWidth(500),
                        X = Application.GetRealWidth(35),
                        Y = Application.GetRealHeight(271),
                        Height = Application.GetRealHeight(449),
                        Width = Application.GetRealWidth(440),
                        Radius = CommonPage.BigFormRadius,
                        BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
                    };
@@ -703,9 +742,9 @@
                    var changeHomeBtn = new Button()
                    {
                        X = Application.GetRealWidth(80),
                        Width = Application.GetRealWidth(450),
                        Height = Application.GetRealHeight(110),
                        TextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor,
                        Width = Application.GetRealWidth(350),
                        Height = Application.GetRealHeight(150),
                        TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                        TextID = R.MyInternationalizationString.ChangeHome,
                        TextAlignment = TextAlignment.CenterLeft
                    };
@@ -714,7 +753,7 @@
                    var scrolView = new VerticalScrolViewLayout()
                    {
                        Y = changeHomeBtn.Bottom,
                        Height = Application.GetRealHeight(220)
                        Height = Application.GetMinRealAverage(305-10)
                    };
                    changeHomeFL.AddChidren(scrolView);
@@ -729,34 +768,39 @@
                        }
                        var rowView = new RowLayout()
                        {
                            Height = Application.GetRealHeight(110)
                            Height = Application.GetRealHeight(150)
                        };
                        scrolView.AddChidren(rowView);
                        var pointBtn = new Device.CommonForm.SelectedStatuButton()
                        {
                            X=Application.GetRealWidth(80),
                            Width = Application.GetMinRealAverage(80),
                            Height = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(80),
                            Gravity = Gravity.CenterVertical,
                            UnSelectedImagePath = "Item/Point.png",
                            SelectedImagePath = "Item/PointSelected.png",
                            UnSelectedImagePath = "Item/House.png",
                            SelectedImagePath = "Item/HouseSelected.png",
                            IsSelected = home.Id == Config.Instance.Home.Id
                        };
                        rowView.AddChidren(pointBtn);
                        var nameBtn = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = Application.GetRealWidth(80),
                            Width = Application.GetRealWidth(500 - 80 - 50),
                            X = Application.GetRealWidth(173),
                            Width = Application.GetRealWidth(280),
                            TextAlignment = TextAlignment.CenterLeft,
                            Text = home.Name,
                            TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                            SelectedTextColor = ZigbeeColor.Current.GXCTextBlueColor,
                            TextColor = ZigbeeColor.Current.GXCTextGrayColor,
                            SelectedTextColor = ZigbeeColor.Current.GXCTextBlackColor,
                            IsSelected = home.Id == Config.Instance.Home.Id
                        };
                        if(home.IsOthreShare)
                        {
                            nameBtn.Text = $"({Language.StringByID(R.MyInternationalizationString.Shared)}){home.Name}";
                        }
                        rowView.AddChidren(nameBtn);
                        EventHandler<MouseEventArgs> selectedResidenceHandler = (send1, e1) =>
                        {
                            if (Config.Instance.Home == home)
                            if (Config.Instance.Home.FileName == homeFilePath)
                            {
                                return;
                            }
@@ -766,6 +810,10 @@
                            nameBtn.IsSelected = true;
                            residecneName.Text = home.Name;
                            if(home.IsOthreShare)
                            {
                                nameBtn.Text = $"({Language.StringByID(R.MyInternationalizationString.Shared)}){home.Name}";
                            }
                            clickCheckBtn = pointBtn;
                            clickNameBtn = nameBtn;
                            residenceListView.Close();
@@ -781,6 +829,10 @@
                            clickCheckBtn = pointBtn;
                            clickNameBtn = nameBtn;
                            residecneName.Text = home.Name;
                            if (home.IsOthreShare)
                            {
                                residecneName.Text = nameBtn.Text = $"({Language.StringByID(R.MyInternationalizationString.Shared)}){home.Name}";
                            }
                        }
                        else
                        {
@@ -795,39 +847,90 @@
            {
            };
            #endregion
            #region midView
            var midView = new FrameLayout()
            if(CanBindGateway()==false)
            {
                Y = topFrameLayout.Bottom,
                Height = midView_Height,
            };
            AddChidren(midView);
            #endregion
                var roomPageView = new PageLayout()
                {
                    Y = Application.GetRealHeight(302),
                    Width = Application.GetRealWidth(CommonPage.AppRealWidth - CommonPage.XLeft * 2),
                    Height = Application.GetMinRealAverage(roomPageView_Height),
                    Radius = CommonPage.BigFormRadius,
                    Gravity = Gravity.CenterHorizontal,
                    IsShowPoint = false
                };
                AddChidren(roomPageView);
            #region --roomPage
            var roomPageView = new PageLayout()
            {
                Y = Application.GetRealHeight(50) + residecneName.Bottom,
                Width = Application.GetRealWidth(CommonPage.AppRealWidth - CommonPage.XLeft * 2),
                Height = Application.GetMinRealAverage(roomPageView_Height),
                Radius = CommonPage.BigFormRadius,
                Gravity = Gravity.CenterHorizontal,
                IsShowPoint = false
            };
            AddChidren(roomPageView);
                //当前房间
                if (Shared.Common.Room.CanInitAllRoom == true)
                {
                    //Room.CurrentRoom = Room.CurrentRoom == null ? Room.Lists[0] : Room.CurrentRoom;
                    Room.CurrentRoom = Room.Lists[0];
                    foreach (var room in Room.Lists)
                    {
                        var roomBackView = new FrameLayout()
                        {
                            BackgroundImagePath = room.BackgroundImage
                        };
                        roomPageView.AddChidren(roomBackView);
                        var roomBG = new Button()
                        {
                            UnSelectedImagePath = "Room/HomeBG.png",
                        };
                        roomBackView.AddChidren(roomBG);
                        var roomName = new Button()
                        {
                            X = Application.GetRealWidth(20),
                            Y = Application.GetRealHeight(20),
                            Width = Application.GetRealWidth(500),
                            Height = Application.GetRealHeight(80),
                            Text = room.Name,
                            TextAlignment = TextAlignment.CenterLeft,
                            TextColor = ZigbeeColor.Current.GXCTextWhiteColor,
                            TextSize = 18,
                        };
                        roomBackView.AddChidren(roomName);
                        var roomListBtn = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = roomPageView.Width - Application.GetRealWidth(100 + 20),
                            Y = Application.GetRealHeight(20),
                            Width = Application.GetMinRealAverage(100),
                            Height = Application.GetMinRealAverage(100),
                            UnSelectedImagePath = "Item/List.png",
                            SelectedImagePath = "Item/ListSelected.png"
                        };
                        roomBackView.AddChidren(roomListBtn);
            //当前房间
            if (Shared.Common.Room.canInitAllRoom == true)
            {
                //Room.CurrentRoom = Room.CurrentRoom == null ? Room.Lists[0] : Room.CurrentRoom;
                Room.CurrentRoom = Room.Lists[0];
                foreach (var room in Room.Lists)
                        roomListBtn.MouseUpEventHandler += (send, e) =>
                        {
                            //var roomList = new Device.Room.RoomManagement();
                            //HomePage.Instance.AddChidren(roomList);
                            //HomePage.Instance.PageIndex += 1;
                            //roomList.Show();
                            //roomList.action += () =>
                            //{
                            //    Show();
                            //};
                            var editRoom = new Device.Room.AddRoom();
                            HomePage.Instance.AddChidren(editRoom);
                            HomePage.Instance.PageIndex += 1;
                            editRoom.Show();
                            editRoom.action += () =>
                            {
                                Show();
                            };
                        };
                    }
                }
                else
                {
                    var roomBackView = new FrameLayout()
                    {
                        BackgroundImagePath = room.BackgroundImage
                        BackgroundImagePath = "Room/r0.png"
                    };
                    roomPageView.AddChidren(roomBackView);
                    var roomBG = new Button()
@@ -841,172 +944,100 @@
                        Y = Application.GetRealHeight(20),
                        Width = Application.GetRealWidth(500),
                        Height = Application.GetRealHeight(80),
                        Text = room.Name,
                        Text = Language.StringByID(R.MyInternationalizationString.Favorite),
                        TextAlignment = TextAlignment.CenterLeft,
                        TextColor = ZigbeeColor.Current.GXCTextWhiteColor,
                        TextSize = 18,
                    };
                    roomBackView.AddChidren(roomName);
                    var roomListBtn = new Device.CommonForm.SelectedStatuButton()
                    var roomListBtn = new Button()
                    {
                        X = roomPageView.Width - Application.GetRealWidth(100 + 20),
                        Y = Application.GetRealHeight(20),
                        Width = Application.GetMinRealAverage(100),
                        Height = Application.GetMinRealAverage(100),
                        UnSelectedImagePath = "Item/List.png",
                        SelectedImagePath = "Item/ListSelected.png"
                        UnSelectedImagePath = "Item/List.png"
                    };
                    roomBackView.AddChidren(roomListBtn);
                    roomListBtn.MouseUpEventHandler += (send, e) =>
                    {
                        var roomList = new Device.Room.RoomManagement();
                        HomePage.Instance.AddChidren(roomList);
                        HomePage.Instance.PageIndex += 1;
                        roomList.Show();
                        roomList.action += () =>
                        {
                            Show();
                        };
                    };
                }
                var functionSceneView = new FrameLayout()
                {
                    Y = Application.GetRealHeight(861),
                    Width=Application.GetRealWidth(832),
                    Height = Application.GetRealHeight(167),
                    Gravity=Gravity.CenterHorizontal,
                    BackgroundImagePath="Item/SceneFunctionBG.png"
                };
                AddChidren(functionSceneView);
                //功能
                functionBtn = new Button()
                {
                    X = Application.GetRealWidth(30),
                    Y=Application.GetRealHeight(12),
                    Width = Application.GetRealWidth(350),
                    Height = Application.GetRealHeight(100),
                    TextColor = ZigbeeColor.Current.GXCTextGrayColor3,
                    SelectedTextColor = ZigbeeColor.Current.GXCTextWhiteColor,
                    TextID = R.MyInternationalizationString.Function,
                    IsSelected = true
                };
                functionSceneView.AddChidren(functionBtn);
                //场景
                var sceneBtn = new Button()
                {
                    X = Application.GetRealWidth(430),
                    Y = Application.GetRealHeight(12),
                    Width = Application.GetRealWidth(360),
                    Height = Application.GetRealHeight(100),
                    TextColor = ZigbeeColor.Current.GXCTextGrayColor3,
                    SelectedTextColor = ZigbeeColor.Current.GXCTextWhiteColor,
                    TextID = R.MyInternationalizationString.Scence,
                    IsSelected = false
                };
                functionSceneView.AddChidren(sceneBtn);
                //功能和场景bodyView
                functionSceneBodyView = new FrameLayout()
                {
                    Y = functionSceneView.Bottom,
                    Height = Application.GetRealHeight(750),
                    Gravity = Gravity.CenterHorizontal,
                    BackgroundColor=ZigbeeColor.Current.GXCGrayBackgroundColor
                };
                AddChidren(functionSceneBodyView);
                //选择功能分栏
                functionBtn.MouseUpEventHandler += (sender, e) =>
                {
                    sceneBtn.IsSelected = false;
                    functionBtn.IsSelected = true;
                    RefreshBodyView();
                };
                //选择场景分栏
                sceneBtn.MouseUpEventHandler += (sender, e) =>
                {
                    functionBtn.IsSelected = false;
                    sceneBtn.IsSelected = true;
                    RefreshBodyView();
                };
                RefreshBodyView();
                roomPageView.PageChange += (sender, e) =>
                {
                    //切换当前房间
                    Room.CurrentRoom = Room.CurrentRoom == null ? Room.Lists[0] : Room.Lists[roomPageView.PageIndex];
                    RefreshBodyView();
                };
            }
            else
            {
                var roomBackView = new FrameLayout()
                {
                    BackgroundImagePath = "Room/r0.png"
                };
                roomPageView.AddChidren(roomBackView);
                var roomBG = new Button()
                {
                    UnSelectedImagePath = "Room/HomeBG.png",
                };
                roomBackView.AddChidren(roomBG);
                var roomName = new Button()
                {
                    X = Application.GetRealWidth(20),
                    Y = Application.GetRealHeight(20),
                    Width = Application.GetRealWidth(500),
                    Height = Application.GetRealHeight(80),
                    Text = Language.StringByID(R.MyInternationalizationString.Favorite),
                    TextAlignment = TextAlignment.CenterLeft,
                    TextColor = ZigbeeColor.Current.GXCTextWhiteColor,
                    TextSize = 18,
                };
                roomBackView.AddChidren(roomName);
                var roomListBtn = new Button()
                {
                    X = roomPageView.Width - Application.GetRealWidth(100 + 20),
                    Y = Application.GetRealHeight(20),
                    Width = Application.GetMinRealAverage(100),
                    Height = Application.GetMinRealAverage(100),
                    UnSelectedImagePath = "Item/List.png"
                };
                roomBackView.AddChidren(roomListBtn);
                ShowNoGatewayTip();
            }
            var functionSceneView = new FrameLayout()
            {
                Y = roomPageView.Bottom,
                Height = Application.GetRealHeight(CommonPage.AppRealHeight - CommonPage.TabbarHeight) - roomPageView.Bottom,
            };
            AddChidren(functionSceneView);
            //功能
            functionBtn = new Button()
            {
                X = Application.GetRealWidth(50),
                Width = Application.GetRealWidth(540 - 50) - 2,
                Height = Application.GetRealHeight(150),
                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                SelectedTextColor = ZigbeeColor.Current.GXCTextBlueColor,
                TextAlignment = TextAlignment.Center,
                TextSize = 16,
                TextID = R.MyInternationalizationString.Function,
                IsSelected = true
            };
            functionSceneView.AddChidren(functionBtn);
            var functionSceneMidLine = new Button()
            {
                X = functionBtn.Right,
                Width = 2,
                Y = Application.GetRealHeight(60),
                Height = Application.GetRealHeight(60),
                BackgroundColor = ZigbeeColor.Current.GXCLineColor
            };
            functionSceneView.AddChidren(functionSceneMidLine);
            //场景
            var sceneBtn = new Button()
            {
                X = functionBtn.Right,
                Width = Application.GetRealWidth(540 - 50),
                Height = Application.GetRealHeight(150),
                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                SelectedTextColor = ZigbeeColor.Current.GXCTextBlueColor,
                TextAlignment = TextAlignment.Center,
                TextSize = 16,
                TextID = R.MyInternationalizationString.Scence,
                IsSelected = false
            };
            functionSceneView.AddChidren(sceneBtn);
            var functionSceneBottomLine = new Button()
            {
                Y = functionBtn.Bottom,
                Height = CommonPage.LineHeight,
                X = functionBtn.X,
                Width = roomPageView.Width,
                BackgroundColor = ZigbeeColor.Current.GXCLineColor
            };
            functionSceneView.AddChidren(functionSceneBottomLine);
            var line = new Button()
            {
                Y = functionBtn.Bottom,
                Height = CommonPage.LineHeight,
                X = functionBtn.X,
                Width = Application.GetRealWidth(540 - 50),
                BackgroundColor = ZigbeeColor.Current.GXCButtonBlueColor
            };
            functionSceneView.AddChidren(line);
            //功能和场景bodyView
            functionSceneBodyView = new FrameLayout()
            {
                Y = line.Bottom,
                Height = functionSceneView.Height - functionBtn.Height,
                Width = roomPageView.Width,
                Gravity = Gravity.CenterHorizontal
            };
            functionSceneView.AddChidren(functionSceneBodyView);
            //选择功能分栏
            functionBtn.MouseUpEventHandler += (sender, e) =>
            {
                sceneBtn.IsSelected = false;
                functionBtn.IsSelected = true;
                line.X = functionBtn.X;
                RefreshBodyView();
            };
            //选择场景分栏
            sceneBtn.MouseUpEventHandler += (sender, e) =>
            {
                functionBtn.IsSelected = false;
                sceneBtn.IsSelected = true;
                line.X = sceneBtn.X;
                RefreshBodyView();
            };
            RefreshBodyView();
            #endregion
            roomPageView.PageChange += (sender, e) =>
            {
                //切换当前房间
                Room.CurrentRoom = Room.CurrentRoom == null ? Room.Lists[0] : Room.Lists[roomPageView.PageIndex];
                RefreshBodyView();
            };
            //roomPageView.PageIndex = Room.Lists.IndexOf(Room.CurrentRoom);
        }
        #endregion
@@ -1015,7 +1046,7 @@
        public void RefreshBodyView()
        {
            if (Room.canInitAllRoom == false)
            if (Room.CanInitAllRoom == false)
            {
                return;
            }
@@ -1040,7 +1071,7 @@
        /// <returns><c>true</c>, if bing gateway was caned, <c>false</c> otherwise.</returns>
        private bool CanBindGateway()
        {
            if (HadBindGateway() == false && UserCenter.UserCenterResourse.UserInfo.AuthorityNo == 1)
            if (HadBindGateway() == false && (UserCenter.UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenter.UserCenterResourse.UserInfo.AuthorityNo == 2))
            {
                return true;
            }
@@ -1066,26 +1097,59 @@
        /// </summary>
        private void ShowNoGatewayTip()
        {
            var addGatewayBtn = new Button()
            var bg = new Button
            {
                Height = Application.GetMinRealAverage(200),
                Width = Application.GetMinRealAverage(200),
                UnSelectedImagePath = "Room/AddScenceFunction.png",
                Gravity = Gravity.Center
                Y = Application.GetRealHeight(302),
                Width = Application.GetMinRealAverage(717),
                Height = Application.GetMinRealAverage(478),
                Gravity = Gravity.CenterHorizontal,
                UnSelectedImagePath = "Item/NoBindGW.png"
            };
            functionSceneBodyView.AddChidren(addGatewayBtn);
            addGatewayBtn.MouseUpEventHandler += GoToAddGateWay;
            AddChidren(bg);
            var noGatewayTip = new Button()
            var tip = new Button
            {
                Y = addGatewayBtn.Bottom,
                Height = Application.GetRealHeight(150),
                TextID = R.MyInternationalizationString.NoGateway,
                TextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor,
                TextAlignment = TextAlignment.Center,
                Y = Application.GetRealHeight(815),
                Width = Application.GetMinRealAverage(717),
                Height = Application.GetMinRealAverage(58),
                Gravity = Gravity.CenterHorizontal,
                TextID = R.MyInternationalizationString.NewAccountNeedBingGW,
                TextColor = ZigbeeColor.Current.GXCTextGrayColor
            };
            AddChidren(tip);
            var addBG = new Button
            {
                Y = Application.GetRealHeight(1048),
                Height = Application.GetMinRealAverage(366),
                Width = Application.GetMinRealAverage(971),
                UnSelectedImagePath = "Item/VirtualFrame.png",
                Gravity = Gravity.CenterHorizontal
            };
            functionSceneBodyView.AddChidren(noGatewayTip);
            AddChidren(addBG);
            var addGatewayBtn = new Button()
            {
                Y = Application.GetRealHeight(1143),
                Height = Application.GetMinRealAverage(89),
                Width = Application.GetMinRealAverage(89),
                UnSelectedImagePath = "Item/Add_GW.png",
                Gravity = Gravity.CenterHorizontal
            };
            AddChidren(addGatewayBtn);
            addGatewayBtn.MouseUpEventHandler += GoToAddGateWay;
            var addTip = new Button
            {
                Y = Application.GetRealHeight(1256),
                Width = Application.GetMinRealAverage(717),
                Height = Application.GetMinRealAverage(58),
                Gravity = Gravity.CenterHorizontal,
                TextID = R.MyInternationalizationString.AddSmartGW,
                TextColor = ZigbeeColor.Current.GXCTextBlackColor
            };
            AddChidren(addTip);
            addTip.MouseUpEventHandler += GoToAddGateWay;
        }
        /// <summary>
@@ -1095,8 +1159,8 @@
        /// <param name="mouseEventArgs">The ${ParameterType} instance containing the event data.</param>
        private void GoToAddGateWay(object sender, MouseEventArgs mouseEventArgs)
        {
            var selectNewGateWayForm = new UserCenter.GatewayAdd.NewGateWaySelectForm();
            selectNewGateWayForm.AddForm();
            UserCenter.GatewayAdd.NewGateWaySelectForm selectNewGateWayForm = new UserCenter.GatewayAdd.NewGateWaySelectForm { };
            selectNewGateWayForm.AddForm(selectNewGateWayForm);
        }
        #endregion
@@ -1124,1216 +1188,1372 @@
        /// </summary>
        private void ShowFunction()
        {
            if (CanBindGateway() == false)
            //选择功能--直接从房间的devicelist中获取
            var deviceList = Room.CurrentRoom.DeviceUIList;
            if (deviceList == null)
            {
                //选择功能--直接从房间的devicelist中获取
                var deviceList = Room.CurrentRoom.DeviceUIList;
                if (deviceList == null)
                {
                    return;
                }
                return;
            }
                if (deviceList.Count == 0)
            if (deviceList.Count == 0)
            {
                ShowNoFunctionTip();
            }
            else
            {
                deviceVerticalScrolViewLayout = new VerticalScrolViewLayout { };
                functionSceneBodyView.AddChidren(deviceVerticalScrolViewLayout);
                foreach (var device in deviceList)
                {
                    ShowNoFunctionTip();
                }
                else
                {
                    deviceVerticalScrolViewLayout = new VerticalScrolViewLayout { };
                    functionSceneBodyView.AddChidren(deviceVerticalScrolViewLayout);
                    foreach (var device in deviceList)
                    if (device == null || device.CommonDevice == null)
                    {
                        if (device == null || device.CommonDevice == null)
                        continue;
                    }
                    //删除设备
                    EventHandler<MouseEventArgs> delEvent = (sender, e) =>
                    {
                        var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.ConfirmDelete), Language.StringByID(R.MyInternationalizationString.Cancel), Language.StringByID(R.MyInternationalizationString.Confrim));
                        alert.Show();
                        alert.ResultEventHandler += (send1, e1) =>
                        {
                            if (e1)
                            {
                                Room.CurrentRoom.DeleteDevice(device.FileName);
                                    //RefreshBodyView();
                                    deviceVerticalScrolViewLayout.RemoveViewByTag((sender as Button).Tag);
                            }
                        };
                    };
                    //收藏
                    //EventHandler<MouseEventArgs> collectionEvent = (sender, e) =>
                    //{
                    //    if ((sender as Button).IsSelected)
                    //    {
                    //        Room.Lists[0].DeleteDevice(device.FilePath);
                    //        (sender as Button).IsSelected = false;
                    //        if (Room.CurrentRoom == Room.Lists[0])
                    //        {
                    //            DeviceVerticalScrolViewLayout.RemoveViewByTag((sender as Button).Tag);
                    //        }
                    //    }
                    //    else
                    //    {
                    //        Room.Lists[0].AddDevice(device.FilePath);
                    //        (sender as Button).IsSelected = true;
                    //    }
                    //    //RefreshBodyView();
                    //};
                    EventHandler<MouseEventArgs> collectionEvent = (sender, e) =>
                    {
                        if (Room.CurrentRoom == Room.Lists[0])
                        {
                            Room.Lists[0].DeleteDevice(device.FileName);
                            deviceVerticalScrolViewLayout.RemoveViewByTag((sender as Button).Tag);
                        }
                    };
                    //////判断设备是否支持的属性 如开关等控制
                    if (device.CommonDevice.Type == ZigBee.Device.DeviceType.WindowCoveringDevice)
                    {
                        //窗帘 卷帘
                        var rollerShade = (ZigBee.Device.Rollershade)device.CommonDevice;
                        //不上非远程
                        if (rollerShade.Gateway == null)
                        {
                            continue;
                        }
                        //删除设备
                        EventHandler<MouseEventArgs> delEvent = (sender, e) =>
                        if (rollerShade.Gateway.IsVirtual)
                        {
                            var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.ConfirmDelete), Language.StringByID(R.MyInternationalizationString.Cancel), Language.StringByID(R.MyInternationalizationString.Confrim));
                            alert.Show();
                            alert.ResultEventHandler += (send1, e1) =>
                            //发送读取状态命令
                            ReadStatus(rollerShade, () =>
                            {
                                if (e1)
                                {
                                    Room.CurrentRoom.DeleteDevice(device.FileName);
                                    //RefreshBodyView();
                                    deviceVerticalScrolViewLayout.RemoveViewByTag((sender as Button).Tag);
                                }
                            };
                                rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                            });
                        }
                        else
                        {
                            if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - rollerShade.LastDateTime).TotalSeconds)
                            {
                                rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                            }
                        }
                        var deviceFL = new FrameLayout
                        {
                            Height = Application.GetRealHeight(deviceFL_Height),
                            BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                            Tag = device
                        };
                        //收藏
                        //EventHandler<MouseEventArgs> collectionEvent = (sender, e) =>
                        deviceVerticalScrolViewLayout.AddChidren(deviceFL);
                        var deviceRowLayout = new RowLayout
                        {
                            Y = Application.GetRealHeight(25),
                            Height = Application.GetRealHeight(deviceFL_Height - 25) - 1,
                            LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                            BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                            Radius = CommonPage.BigFormRadius,
                            Tag = device
                        };
                        deviceFL.AddChidren(deviceRowLayout);
                        var deviceItemFL = new FrameLayout()
                        {
                            BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                            Radius = CommonPage.BigFormRadius
                        };
                        deviceRowLayout.AddChidren(deviceItemFL);
                        var deviceIMG = new Button()
                        {
                            X = Application.GetRealWidth(50),
                            Y = Application.GetRealHeight(30),
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            UnSelectedImagePath = device.IconPath,
                            SelectedImagePath = device.OnlineIconPath,
                            IsSelected = rollerShade.IsOnline == 1,
                            Tag = deviceStatus_Online
                        };
                        deviceItemFL.AddChidren(deviceIMG);
                        var deviceName = new Button()
                        {
                            X = Application.GetRealWidth(10),
                            Y = deviceIMG.Bottom,
                            Width = Application.GetRealWidth(180),
                            Height = Application.GetRealHeight(80),
                            TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                            TextAlignment = TextAlignment.Center,
                            Text = device.CommonDevice.DeviceEpointName,
                            TextSize = 10,
                            IsMoreLines = true
                        };
                        deviceItemFL.AddChidren(deviceName);
                        var closeBtnBG = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = deviceName.Right,
                            Width = Application.GetMinRealAverage(250),
                            Height = Application.GetMinRealAverage(250),
                            Gravity = Gravity.CenterVertical,
                        };
                        deviceItemFL.AddChidren(closeBtnBG);
                        var closeBtn = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = Application.GetRealWidth(50) + deviceName.Right,
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            Gravity = Gravity.CenterVertical,
                            UnSelectedImagePath = "WindowCovering/RollerShadeClose.png",
                            SelectedImagePath = "WindowCovering/RollerShadeCloseSelected.png",
                            //Visible=false
                        };
                        deviceItemFL.AddChidren(closeBtn);
                        var stopBtnBG = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = Application.GetRealWidth(120) + closeBtn.Right,
                            Width = Application.GetMinRealAverage(250),
                            Height = Application.GetMinRealAverage(250),
                            Gravity = Gravity.CenterVertical,
                        };
                        deviceItemFL.AddChidren(stopBtnBG);
                        var stopBtn = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = Application.GetRealWidth(120) + closeBtn.Right,
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            Gravity = Gravity.CenterVertical,
                            UnSelectedImagePath = "WindowCovering/RollerShadeStop.png",
                            SelectedImagePath = "WindowCovering/RollerShadeStopSelected.png",
                            //Visible=false
                        };
                        deviceItemFL.AddChidren(stopBtn);
                        var openBtnBG = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = Application.GetRealWidth(20) + stopBtn.Right,
                            Width = Application.GetMinRealAverage(250),
                            Height = Application.GetMinRealAverage(250),
                            Gravity = Gravity.CenterVertical,
                        };
                        deviceItemFL.AddChidren(openBtnBG);
                        var openBtn = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = Application.GetRealWidth(120) + stopBtn.Right,
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            Gravity = Gravity.CenterVertical,
                            UnSelectedImagePath = "WindowCovering/RollerShadeOpen.png",
                            SelectedImagePath = "WindowCovering/RollerShadeOpenSelected.png",
                            //Visible=false
                        };
                        deviceItemFL.AddChidren(openBtn);
                        var collectionBtn = new Button()
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(150),
                            Y = Application.GetRealHeight(20),
                            Width = Application.GetMinRealAverage(80),
                            Height = Application.GetMinRealAverage(80),
                            UnSelectedImagePath = "Item/Collection.png",
                            SelectedImagePath = "Item/CollectionSelected.png",
                            Tag = device
                        };
                        //*****先隐藏*****
                        //deviceItemFL.AddChidren(collectionBtn);
                        var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                        {
                            Tag = device,
                            IsMoreLines = true
                        };
                        if (Room.CurrentRoom.IsLove)
                        {
                            deleteBtn.TextID = R.MyInternationalizationString.CancelCollect;
                            deleteBtn.BackgroundColor = ZigbeeColor.Current.GXCCancelCollectionBGColor;
                            deleteBtn.MouseUpEventHandler += collectionEvent;
                            deviceRowLayout.AddRightView(deleteBtn);
                        }
                        else if (Room.CurrentRoom.IsSharedRoom)
                        {
                            //不处理
                        }
                        else
                        {
                            deleteBtn.MouseUpEventHandler += delEvent;
                            deviceRowLayout.AddRightView(deleteBtn);
                        }
                        if (rollerShade.WcdType == -1)
                        {
                            CommonPage.Loading.Start();
                            new System.Threading.Thread(() =>
                            {
                                ZigBee.Device.Rollershade.ReadWcdTypeAction(rollerShade, () =>
                                {
                                    Application.RunOnMainThread(() =>
                                    {
                                        if (rollerShade.WcdType == 0)
                                        {
                                            closeBtn.UnSelectedImagePath = "WindowCovering/RollerShadeDown.png";
                                            closeBtn.SelectedImagePath = "WindowCovering/RollerShadeDownSelected.png";
                                            openBtn.UnSelectedImagePath = "WindowCovering/RollerShadeUp.png";
                                            openBtn.SelectedImagePath = "WindowCovering/RollerShadeUpSelected.png";
                                        }
                                        else
                                        {
                                            closeBtn.UnSelectedImagePath = "WindowCovering/RollerShadeClose.png";
                                            closeBtn.SelectedImagePath = "WindowCovering/RollerShadeCloseSelected.png";
                                            openBtn.UnSelectedImagePath = "WindowCovering/RollerShadeOpen.png";
                                            openBtn.SelectedImagePath = "WindowCovering/RollerShadeOpenSelected.png";
                                        }
                                        CommonPage.Loading.Hide();
                                    });
                                });
                            })
                            { IsBackground = true }.Start();
                        }
                        else if (rollerShade.WcdType == 0)
                        {
                            closeBtn.UnSelectedImagePath = "WindowCovering/RollerShadeDown.png";
                            closeBtn.SelectedImagePath = "WindowCovering/RollerShadeDownSelected.png";
                            openBtn.UnSelectedImagePath = "WindowCovering/RollerShadeUp.png";
                            openBtn.SelectedImagePath = "WindowCovering/RollerShadeUpSelected.png";
                        }
                        else
                        {
                            closeBtn.UnSelectedImagePath = "WindowCovering/RollerShadeClose.png";
                            closeBtn.SelectedImagePath = "WindowCovering/RollerShadeCloseSelected.png";
                            openBtn.UnSelectedImagePath = "WindowCovering/RollerShadeOpen.png";
                            openBtn.SelectedImagePath = "WindowCovering/RollerShadeOpenSelected.png";
                        }
                        EventHandler<MouseEventArgs> curtainHandler = (sender, e) =>
                        {
                            var curtain = new Phone.Device.Curtain.RollerShadeControl();
                            UserView.HomePage.Instance.ScrollEnabled = false;
                            UserView.HomePage.Instance.AddChidren(curtain);
                            UserView.HomePage.Instance.PageIndex += 1;
                            curtain.action = RefreshBodyView;
                            curtain.Show(device, Room.CurrentRoom);
                        };
                        deviceItemFL.MouseUpEventHandler += curtainHandler;
                        //deviceItemFL.MouseLongEventHandler += curtainHandler;
                        deviceIMG.MouseUpEventHandler += curtainHandler;
                        deviceName.MouseUpEventHandler += curtainHandler;
                        //窗帘关
                        closeBtn.MouseUpEventHandler += (sender, e) =>
                        {
                            zbGateway = device.CommonDevice.Gateway;
                            sendedControlCommand = false;
                            zbGateway.ReportAction += UpdateDeviceControllStatu;
                            AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                            rollerShade.CurtainUpDownStopControl(1);
                                //控制延时回调
                                DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                            {
                                if (Parent == null)
                                {
                                    return;
                                }
                                RemoveUpdateControlDeviceStatuAction(zbGateway);
                                if (sendedControlCommand == false)
                                {
                                    DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                }
                            });
                        };
                        //窗帘停
                        stopBtn.MouseUpEventHandler += (sender, e) =>
                        {
                            zbGateway = device.CommonDevice.Gateway;
                            sendedControlCommand = false;
                            zbGateway.ReportAction += UpdateDeviceControllStatu;
                            AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                            rollerShade.CurtainUpDownStopControl(2);
                                //控制延时回调
                                DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                            {
                                if (Parent == null)
                                {
                                    return;
                                }
                                RemoveUpdateControlDeviceStatuAction(zbGateway);
                                if (sendedControlCommand == false)
                                {
                                    DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                }
                            });
                        };
                        //窗帘开
                        openBtn.MouseUpEventHandler += (sender, e) =>
                        {
                            zbGateway = device.CommonDevice.Gateway;
                            sendedControlCommand = false;
                            zbGateway.ReportAction += UpdateDeviceControllStatu;
                            AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                            rollerShade.CurtainUpDownStopControl(0);
                                //控制延时回调
                                DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                            {
                                if (Parent == null)
                                {
                                    return;
                                }
                                RemoveUpdateControlDeviceStatuAction(zbGateway);
                                if (sendedControlCommand == false)
                                {
                                    DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                }
                            });
                        };
                        //collectionBtn.MouseUpEventHandler += (sender, e) =>
                        //{
                        //    if ((sender as Button).IsSelected)
                        //    if (collectionBtn.IsSelected)
                        //    {
                        //        Room.Lists[0].DeleteDevice(device.FilePath);
                        //        (sender as Button).IsSelected = false;
                        //        if (Room.CurrentRoom == Room.Lists[0])
                        //        collectionBtn.IsSelected = false;
                        //    }
                        //    else
                        //    {
                        //        Room.Lists[0].AddDevice(device.FilePath);
                        //        collectionBtn.IsSelected = true;
                        //    }
                        //    //RefreshBodyView();
                        //};
                        collectionBtn.MouseUpEventHandler += collectionEvent;
                        //var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj==device.FilePath);
                        //if(dev==null)
                        //{
                        //    collectionBtn.IsSelected = false;
                        //}
                        //else
                        //{
                        //    collectionBtn.IsSelected = true;
                        //}
                        ////开关停按钮是否显示
                        //foreach(var command in commandList)
                        //{
                        //    if (command == null)
                        //    {
                        //        continue;
                        //    }
                        //    if (command.commandId==0)
                        //    {
                        //        openBtn.Visible = true;
                        //    }
                        //    else if(command.commandId==1)
                        //    {
                        //        openBtn.Visible = true;
                        //    }
                        //    else if(command.commandId==2)
                        //    {
                        //        stopBtn.Visible = true;
                        //    }
                        //}
                    }
                    else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.OnOffOutput)
                    {
                        //开关灯
                        var light = device.CommonDevice as ToggleLight;
                        //补上非远程
                        if (light.Gateway == null)
                        {
                            continue;
                        }
                        if (light.Gateway.IsVirtual)
                        {
                            //发送读取状态命令
                            ReadStatus(light, () =>
                            {
                                light.ReadOnOffStatus();
                                light.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                            });
                        }
                        else
                        {
                            if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - light.LastDateTime).TotalSeconds)
                            {
                                light.ReadOnOffStatus();
                                light.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                            }
                        }
                        var deviceFL = new FrameLayout
                        {
                            Height = Application.GetRealHeight(deviceFL_Height),
                            BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                            Tag = device
                        };
                        deviceVerticalScrolViewLayout.AddChidren(deviceFL);
                        var deviceRowLayout = new RowLayout
                        {
                            Y = Application.GetRealHeight(25),
                            Height = Application.GetRealHeight(deviceFL_Height - 25) - 1,
                            LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                            BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                            Radius = CommonPage.BigFormRadius,
                            Tag = device
                        };
                        deviceFL.AddChidren(deviceRowLayout);
                        var deviceItemFL = new FrameLayout()
                        {
                            BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                            Radius = CommonPage.BigFormRadius
                        };
                        deviceRowLayout.AddChidren(deviceItemFL);
                        var deviceIMG = new Button()
                        {
                            X = Application.GetRealWidth(50),
                            Y = Application.GetRealHeight(30),
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            UnSelectedImagePath = device.IconPath,
                            SelectedImagePath = device.OnlineIconPath,
                            IsSelected = light.IsOnline == 1,
                            Tag = deviceStatus_Online
                        };
                        deviceItemFL.AddChidren(deviceIMG);
                        var deviceName = new Button()
                        {
                            X = Application.GetRealWidth(10),
                            Y = deviceIMG.Bottom,
                            Width = Application.GetRealWidth(180),
                            Height = Application.GetRealHeight(80),
                            TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                            TextAlignment = TextAlignment.Center,
                            Text = device.CommonDevice.DeviceEpointName,
                            TextSize = 10,
                            IsMoreLines = true
                        };
                        deviceItemFL.AddChidren(deviceName);
                        var collectionBtn = new Button()
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(150),
                            Y = Application.GetRealHeight(20),
                            Width = Application.GetMinRealAverage(80),
                            Height = Application.GetMinRealAverage(80),
                            UnSelectedImagePath = "Item/Collection.png",
                            SelectedImagePath = "Item/CollectionSelected.png",
                            Tag = device
                        };
                        //***先隐藏******
                        //deviceItemFL.AddChidren(collectionBtn);
                        var switchBtnBG = new Button
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(250),
                            Width = Application.GetMinRealAverage(250),
                            Height = Application.GetMinRealAverage(250),
                            Gravity = Gravity.CenterVertical
                        };
                        deviceItemFL.AddChidren(switchBtnBG);
                        var switchBtn = new Button
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(200),
                            //Y = deviceItemFL.Bottom - Application.GetRealHeight(120),
                            Width = Application.GetMinRealAverage(183),
                            Height = Application.GetMinRealAverage(123),
                            UnSelectedImagePath = "Item/Switch.png",
                            SelectedImagePath = "Item/SwitchSelected.png",
                            IsSelected = light.OnOffStatus == 1,
                            Tag = deviceStatus_OnOffStatus,
                            //Visible=false
                            Gravity = Gravity.CenterVertical
                        };
                        deviceItemFL.AddChidren(switchBtn);
                        switchBtn.MouseUpEventHandler += (send2, e2) =>
                        {
                            switchBtn.IsSelected = !switchBtn.IsSelected;
                            if (switchBtn.IsSelected == true)
                            {
                                zbGateway = device.CommonDevice.Gateway;
                                sendedControlCommand = false;
                                zbGateway.ReportAction += UpdateDeviceControllStatu;
                                AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                light.SwitchControl(1);
                                    //控制延时回调
                                    DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                {
                                    if (Parent == null)
                                    {
                                        return;
                                    }
                                    RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    if (sendedControlCommand == false)
                                    {
                                        DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    }
                                });
                            }
                            else
                            {
                                zbGateway = device.CommonDevice.Gateway;
                                sendedControlCommand = false;
                                zbGateway.ReportAction += UpdateDeviceControllStatu;
                                AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                light.SwitchControl(0);
                                    //控制延时回调
                                    DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                {
                                    if (Parent == null)
                                    {
                                        return;
                                    }
                                    RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    if (sendedControlCommand == false)
                                    {
                                        DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    }
                                });
                            }
                        };
                        var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                        {
                            Tag = device,
                            IsMoreLines = true
                        };
                        if (Room.CurrentRoom.IsLove)
                        {
                            deleteBtn.TextID = R.MyInternationalizationString.CancelCollect;
                            deleteBtn.BackgroundColor = ZigbeeColor.Current.GXCCancelCollectionBGColor;
                            deleteBtn.MouseUpEventHandler += collectionEvent;
                            deviceRowLayout.AddRightView(deleteBtn);
                        }
                        else if (Room.CurrentRoom.IsSharedRoom)
                        {
                            //不处理
                        }
                        else
                        {
                            deleteBtn.MouseUpEventHandler += delEvent;
                            deviceRowLayout.AddRightView(deleteBtn);
                        }
                        EventHandler<MouseEventArgs> lightHandler = (sender, e) =>
                        {
                            var lightControl = new Phone.Device.Light.LightControl();
                            UserView.HomePage.Instance.AddChidren(lightControl);
                            UserView.HomePage.Instance.PageIndex += 1;
                            lightControl.action = RefreshBodyView;
                            lightControl.Show(device, Room.CurrentRoom);
                        };
                        //deviceItemFL.MouseLongEventHandler += lightHandler;
                        deviceItemFL.MouseUpEventHandler += lightHandler;
                        deviceName.MouseUpEventHandler += lightHandler;
                        deviceIMG.MouseUpEventHandler += lightHandler;
                        //collectionBtn.MouseUpEventHandler += (sender, e) =>
                        //{
                        //    if (collectionBtn.IsSelected)
                        //    {
                        //        Room.Lists[0].DeleteDevice(device.FilePath);
                        //        collectionBtn.IsSelected = false;
                        //        if(Room.CurrentRoom==Room.Lists[0])
                        //        {
                        //            DeviceVerticalScrolViewLayout.RemoveViewByTag((sender as Button).Tag);
                        //            RefreshBodyView();
                        //        }
                        //    }
                        //    else
                        //    {
                        //        Room.Lists[0].AddDevice(device.FilePath);
                        //        (sender as Button).IsSelected = true;
                        //        collectionBtn.IsSelected = true;
                        //    }
                        //    //RefreshBodyView();
                        //};
                        EventHandler<MouseEventArgs> collectionEvent = (sender, e) =>
                        collectionBtn.MouseUpEventHandler += collectionEvent;
                        //var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FilePath);
                        //if (dev == null)
                        //{
                        //    collectionBtn.IsSelected = false;
                        //}
                        //else
                        //{
                        //    collectionBtn.IsSelected = true;
                        //}
                    }
                    else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.AirSwitch)
                    {
                        //空气开关
                        var airSwitch = device.CommonDevice as AirSwitch;
                        //补上非远程
                        if (airSwitch.Gateway == null)
                        {
                            if (Room.CurrentRoom == Room.Lists[0])
                            continue;
                        }
                        if (airSwitch.Gateway.IsVirtual)
                        {
                            //发送读取状态命令
                            ReadStatus(airSwitch, () =>
                            {
                                Room.Lists[0].DeleteDevice(device.FileName);
                                deviceVerticalScrolViewLayout.RemoveViewByTag((sender as Button).Tag);
                                airSwitch.ReadOnOffStatus();
                                airSwitch.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                            });
                        }
                        else
                        {
                            //防止短时间内多次读取设备状态
                            if ((DateTime.Now - airSwitch.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan)
                            {
                                airSwitch.ReadOnOffStatus();
                                airSwitch.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                            }
                        }
                        var deviceFL = new FrameLayout
                        {
                            Height = Application.GetRealHeight(deviceFL_Height),
                            BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                            Tag = device
                        };
                        deviceVerticalScrolViewLayout.AddChidren(deviceFL);
                        var deviceRowLayout = new RowLayout
                        {
                            Y = Application.GetRealHeight(25),
                            Height = Application.GetRealHeight(deviceFL_Height - 25) - 1,
                            LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                            BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                            Radius = CommonPage.BigFormRadius,
                            Tag = device
                        };
                        deviceFL.AddChidren(deviceRowLayout);
                        var deviceItemFL = new FrameLayout()
                        {
                            BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                            Radius = CommonPage.BigFormRadius
                        };
                        deviceRowLayout.AddChidren(deviceItemFL);
                        var deviceIMG = new Button()
                        {
                            X = Application.GetRealWidth(50),
                            Y = Application.GetRealHeight(30),
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            UnSelectedImagePath = device.IconPath,
                            SelectedImagePath = device.OnlineIconPath,
                            IsSelected = airSwitch.IsOnline == 1,
                            Tag = deviceStatus_Online
                        };
                        deviceItemFL.AddChidren(deviceIMG);
                        var deviceName = new Button()
                        {
                            X = Application.GetRealWidth(10),
                            Y = deviceIMG.Bottom,
                            Width = Application.GetRealWidth(180),
                            Height = Application.GetRealHeight(80),
                            TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                            TextAlignment = TextAlignment.Center,
                            Text = device.CommonDevice.DeviceEpointName,
                            TextSize = 10,
                            IsMoreLines = true
                        };
                        deviceItemFL.AddChidren(deviceName);
                        var collectionBtn = new Button()
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(150),
                            Y = Application.GetRealHeight(20),
                            Width = Application.GetMinRealAverage(80),
                            Height = Application.GetMinRealAverage(80),
                            UnSelectedImagePath = "Item/Collection.png",
                            SelectedImagePath = "Item/CollectionSelected.png",
                            Tag = device
                        };
                        //***先隐藏******
                        //deviceItemFL.AddChidren(collectionBtn);
                        var switchBtnBG = new Button
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(250),
                            Width = Application.GetMinRealAverage(250),
                            Height = Application.GetMinRealAverage(250),
                            Gravity = Gravity.CenterVertical
                        };
                        deviceItemFL.AddChidren(switchBtnBG);
                        var switchBtn = new Button
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(200),
                            //Y = deviceItemFL.Bottom - Application.GetRealHeight(120),
                            Width = Application.GetMinRealAverage(183),
                            Height = Application.GetMinRealAverage(123),
                            UnSelectedImagePath = "Item/Switch.png",
                            SelectedImagePath = "Item/SwitchSelected.png",
                            IsSelected = airSwitch.OnOffStatus == 1,
                            Tag = deviceStatus_OnOffStatus,
                            //Visible=false
                            Gravity = Gravity.CenterVertical
                        };
                        deviceItemFL.AddChidren(switchBtn);
                        switchBtn.MouseUpEventHandler += (send2, e2) =>
                        {
                            switchBtn.IsSelected = !switchBtn.IsSelected;
                            if (switchBtn.IsSelected == true)
                            {
                                zbGateway = device.CommonDevice.Gateway;
                                sendedControlCommand = false;
                                zbGateway.ReportAction += UpdateDeviceControllStatu;
                                AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                airSwitch.SwitchControl(1);
                                    //控制延时回调
                                    DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                {
                                    if (Parent == null)
                                    {
                                        return;
                                    }
                                    RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    if (sendedControlCommand == false)
                                    {
                                        DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    }
                                });
                            }
                            else
                            {
                                zbGateway = device.CommonDevice.Gateway;
                                sendedControlCommand = false;
                                zbGateway.ReportAction += UpdateDeviceControllStatu;
                                AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                airSwitch.SwitchControl(0);
                                    //控制延时回调
                                    DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                {
                                    if (Parent == null)
                                    {
                                        return;
                                    }
                                    RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    if (sendedControlCommand == false)
                                    {
                                        DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    }
                                });
                            }
                        };
                        //////判断设备是否支持的属性 如开关等控制
                        if (device.CommonDevice.Type == ZigBee.Device.DeviceType.WindowCoveringDevice)
                        var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                        {
                            //窗帘 卷帘
                            var rollerShade = (ZigBee.Device.Rollershade)device.CommonDevice;
                            //不上非远程
                            if (rollerShade.Gateway == null)
                            {
                                continue;
                            }
                            if (rollerShade.Gateway.IsVirtual)
                            {
                                //发送读取状态命令
                                ReadStatus(rollerShade, () =>
                                {
                                    rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                });
                            }
                            else
                            {
                                if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - rollerShade.LastDateTime).TotalSeconds)
                                {
                                    rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                }
                            }
                            var deviceFL = new FrameLayout
                            {
                                Height = Application.GetRealHeight(deviceFL_Height),
                                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                                Tag = device
                            };
                            deviceVerticalScrolViewLayout.AddChidren(deviceFL);
                            var deviceRowLayout = new RowLayout
                            {
                                Y = Application.GetRealHeight(25),
                                Height = Application.GetRealHeight(deviceFL_Height - 25) - 1,
                                LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                                BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                                Radius = CommonPage.BigFormRadius,
                                Tag = device
                            };
                            deviceFL.AddChidren(deviceRowLayout);
                            var deviceItemFL = new FrameLayout()
                            {
                                BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                                Radius = CommonPage.BigFormRadius
                            };
                            deviceRowLayout.AddChidren(deviceItemFL);
                            var deviceIMG = new Button()
                            {
                                X = Application.GetRealWidth(50),
                                Y = Application.GetRealHeight(30),
                                Width = Application.GetMinRealAverage(110),
                                Height = Application.GetMinRealAverage(110),
                                UnSelectedImagePath = device.IconPath,
                                SelectedImagePath = device.OnlineIconPath,
                                IsSelected = rollerShade.IsOnline == 1,
                                Tag = deviceStatus_Online
                            };
                            deviceItemFL.AddChidren(deviceIMG);
                            var deviceName = new Button()
                            {
                                X = Application.GetRealWidth(10),
                                Y = deviceIMG.Bottom,
                                Width = Application.GetRealWidth(180),
                                Height = Application.GetRealHeight(80),
                                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                                TextAlignment = TextAlignment.Center,
                                Text = device.CommonDevice.DeviceEpointName,
                                TextSize = 10,
                                IsMoreLines = true
                            };
                            deviceItemFL.AddChidren(deviceName);
                            var closeBtn = new Device.CommonForm.SelectedStatuButton()
                            {
                                X = Application.GetRealWidth(50) + deviceName.Right,
                                Width = Application.GetMinRealAverage(110),
                                Height = Application.GetMinRealAverage(110),
                                Gravity = Gravity.CenterVertical,
                                UnSelectedImagePath = "WindowCovering/RollerShadeClose.png",
                                SelectedImagePath = "WindowCovering/RollerShadeCloseSelected.png",
                                //Visible=false
                            };
                            deviceItemFL.AddChidren(closeBtn);
                            var stopBtn = new Device.CommonForm.SelectedStatuButton()
                            {
                                X = Application.GetRealWidth(120) + closeBtn.Right,
                                Width = Application.GetMinRealAverage(110),
                                Height = Application.GetMinRealAverage(110),
                                Gravity = Gravity.CenterVertical,
                                UnSelectedImagePath = "WindowCovering/RollerShadeStop.png",
                                SelectedImagePath = "WindowCovering/RollerShadeStopSelected.png",
                                //Visible=false
                            };
                            deviceItemFL.AddChidren(stopBtn);
                            var openBtn = new Device.CommonForm.SelectedStatuButton()
                            {
                                X = Application.GetRealWidth(120) + stopBtn.Right,
                                Width = Application.GetMinRealAverage(110),
                                Height = Application.GetMinRealAverage(110),
                                Gravity = Gravity.CenterVertical,
                                UnSelectedImagePath = "WindowCovering/RollerShadeOpen.png",
                                SelectedImagePath = "WindowCovering/RollerShadeOpenSelected.png",
                                //Visible=false
                            };
                            deviceItemFL.AddChidren(openBtn);
                            var collectionBtn = new Button()
                            {
                                X = deviceItemFL.Right - Application.GetRealWidth(150),
                                Y = Application.GetRealHeight(20),
                                Width = Application.GetMinRealAverage(80),
                                Height = Application.GetMinRealAverage(80),
                                UnSelectedImagePath = "Item/Collection.png",
                                SelectedImagePath = "Item/CollectionSelected.png",
                                Tag = device
                            };
                            //*****先隐藏*****
                            //deviceItemFL.AddChidren(collectionBtn);
                            var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                            {
                                Tag = device,
                                IsMoreLines = true
                            };
                            if (Room.CurrentRoom.IsLove)
                            {
                                deleteBtn.TextID = R.MyInternationalizationString.CancelCollect;
                                deleteBtn.BackgroundColor = ZigbeeColor.Current.GXCCancelCollectionBGColor;
                                deleteBtn.MouseUpEventHandler += collectionEvent;
                                deviceRowLayout.AddRightView(deleteBtn);
                            }
                            else if(Room.CurrentRoom.IsSharedRoom)
                            {
                                //不处理
                            }
                            else
                            {
                                deleteBtn.MouseUpEventHandler += delEvent;
                                deviceRowLayout.AddRightView(deleteBtn);
                            }
                            EventHandler<MouseEventArgs> curtainHandler = (sender, e) =>
                            {
                                var curtain = new Phone.Device.Curtain.RollerShadeControl();
                                UserView.HomePage.Instance.ScrollEnabled = false;
                                UserView.HomePage.Instance.AddChidren(curtain);
                                UserView.HomePage.Instance.PageIndex += 1;
                                curtain.action = RefreshBodyView;
                                curtain.Show(device, Room.CurrentRoom);
                            };
                            deviceItemFL.MouseUpEventHandler += curtainHandler;
                            deviceItemFL.MouseLongEventHandler += curtainHandler;
                            deviceIMG.MouseUpEventHandler += curtainHandler;
                            deviceName.MouseUpEventHandler += curtainHandler;
                            //窗帘关
                            closeBtn.MouseUpEventHandler += (sender, e) =>
                            {
                                zbGateway = device.CommonDevice.Gateway;
                                sendedControlCommand = false;
                                zbGateway.ReportAction += UpdateDeviceControllStatu;
                                AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                rollerShade.CurtainUpDownStopControl(1);
                                //控制延时回调
                                DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                {
                                    if (Parent == null)
                                    {
                                        return;
                                    }
                                    RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    if (sendedControlCommand == false)
                                    {
                                        DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    }
                                });
                            };
                            //窗帘停
                            stopBtn.MouseUpEventHandler += (sender, e) =>
                            {
                                zbGateway = device.CommonDevice.Gateway;
                                sendedControlCommand = false;
                                zbGateway.ReportAction += UpdateDeviceControllStatu;
                                AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                rollerShade.CurtainUpDownStopControl(2);
                                //控制延时回调
                                DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                {
                                    if (Parent == null)
                                    {
                                        return;
                                    }
                                    RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    if (sendedControlCommand == false)
                                    {
                                        DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    }
                                });
                            };
                            //窗帘开
                            openBtn.MouseUpEventHandler += (sender, e) =>
                            {
                                zbGateway = device.CommonDevice.Gateway;
                                sendedControlCommand = false;
                                zbGateway.ReportAction += UpdateDeviceControllStatu;
                                AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                rollerShade.CurtainUpDownStopControl(0);
                                //控制延时回调
                                DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                {
                                    if (Parent == null)
                                    {
                                        return;
                                    }
                                    RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    if (sendedControlCommand == false)
                                    {
                                        DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    }
                                });
                            };
                            //collectionBtn.MouseUpEventHandler += (sender, e) =>
                            //{
                            //    if (collectionBtn.IsSelected)
                            //    {
                            //        Room.Lists[0].DeleteDevice(device.FilePath);
                            //        collectionBtn.IsSelected = false;
                            //    }
                            //    else
                            //    {
                            //        Room.Lists[0].AddDevice(device.FilePath);
                            //        collectionBtn.IsSelected = true;
                            //    }
                            //    //RefreshBodyView();
                            //};
                            collectionBtn.MouseUpEventHandler += collectionEvent;
                            //var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj==device.FilePath);
                            //if(dev==null)
                            //{
                            //    collectionBtn.IsSelected = false;
                            //}
                            //else
                            //{
                            //    collectionBtn.IsSelected = true;
                            //}
                            ////开关停按钮是否显示
                            //foreach(var command in commandList)
                            //{
                            //    if (command == null)
                            //    {
                            //        continue;
                            //    }
                            //    if (command.commandId==0)
                            //    {
                            //        openBtn.Visible = true;
                            //    }
                            //    else if(command.commandId==1)
                            //    {
                            //        openBtn.Visible = true;
                            //    }
                            //    else if(command.commandId==2)
                            //    {
                            //        stopBtn.Visible = true;
                            //    }
                            //}
                            Tag = device,
                            IsMoreLines = true
                        };
                        if (Room.CurrentRoom.IsLove)
                        {
                            deleteBtn.TextID = R.MyInternationalizationString.CancelCollect;
                            deleteBtn.BackgroundColor = ZigbeeColor.Current.GXCCancelCollectionBGColor;
                            deleteBtn.MouseUpEventHandler += collectionEvent;
                            deviceRowLayout.AddRightView(deleteBtn);
                        }
                        else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.OnOffOutput)
                        else if (Room.CurrentRoom.IsSharedRoom)
                        {
                            //开关灯
                            var light = device.CommonDevice as ToggleLight;
                            //补上非远程
                            if (light.Gateway == null)
                            {
                                continue;
                            }
                            if (light.Gateway.IsVirtual)
                            {
                                //发送读取状态命令
                                ReadStatus(light, () =>
                                {
                                    light.ReadOnOffStatus();
                                    light.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                });
                            }
                            else
                            {
                                if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - light.LastDateTime).TotalSeconds)
                                {
                                    light.ReadOnOffStatus();
                                    light.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                }
                            }
                            var deviceFL = new FrameLayout
                            {
                                Height = Application.GetRealHeight(deviceFL_Height),
                                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                                Tag = device
                            };
                            deviceVerticalScrolViewLayout.AddChidren(deviceFL);
                            var deviceRowLayout = new RowLayout
                            {
                                Y = Application.GetRealHeight(25),
                                Height = Application.GetRealHeight(deviceFL_Height - 25) - 1,
                                LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                                BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                                Radius = CommonPage.BigFormRadius,
                                Tag = device
                            };
                            deviceFL.AddChidren(deviceRowLayout);
                            var deviceItemFL = new FrameLayout()
                            {
                                BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                                Radius = CommonPage.BigFormRadius
                            };
                            deviceRowLayout.AddChidren(deviceItemFL);
                            var deviceIMG = new Button()
                            {
                                X = Application.GetRealWidth(50),
                                Y = Application.GetRealHeight(30),
                                Width = Application.GetMinRealAverage(110),
                                Height = Application.GetMinRealAverage(110),
                                UnSelectedImagePath = device.IconPath,
                                SelectedImagePath = device.OnlineIconPath,
                                IsSelected = light.IsOnline == 1,
                                Tag = deviceStatus_Online
                            };
                            deviceItemFL.AddChidren(deviceIMG);
                            var deviceName = new Button()
                            {
                                X = Application.GetRealWidth(10),
                                Y = deviceIMG.Bottom,
                                Width = Application.GetRealWidth(180),
                                Height = Application.GetRealHeight(80),
                                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                                TextAlignment = TextAlignment.Center,
                                Text = device.CommonDevice.DeviceEpointName,
                                TextSize = 10,
                                IsMoreLines = true
                            };
                            deviceItemFL.AddChidren(deviceName);
                            var collectionBtn = new Button()
                            {
                                X = deviceItemFL.Right - Application.GetRealWidth(150),
                                Y = Application.GetRealHeight(20),
                                Width = Application.GetMinRealAverage(80),
                                Height = Application.GetMinRealAverage(80),
                                UnSelectedImagePath = "Item/Collection.png",
                                SelectedImagePath = "Item/CollectionSelected.png",
                                Tag = device
                            };
                            //***先隐藏******
                            //deviceItemFL.AddChidren(collectionBtn);
                            var switchBtn = new Button
                            {
                                X = deviceItemFL.Right - Application.GetRealWidth(200),
                                //Y = deviceItemFL.Bottom - Application.GetRealHeight(120),
                                Width = Application.GetMinRealAverage(183),
                                Height = Application.GetMinRealAverage(123),
                                UnSelectedImagePath = "Item/Switch.png",
                                SelectedImagePath = "Item/SwitchSelected.png",
                                IsSelected = light.OnOffStatus == 1,
                                Tag = deviceStatus_OnOffStatus,
                                //Visible=false
                                Gravity = Gravity.CenterVertical
                            };
                            deviceItemFL.AddChidren(switchBtn);
                            switchBtn.MouseUpEventHandler += (send2, e2) =>
                            {
                                switchBtn.IsSelected = !switchBtn.IsSelected;
                                if (switchBtn.IsSelected == true)
                                {
                                    zbGateway = device.CommonDevice.Gateway;
                                    sendedControlCommand = false;
                                    zbGateway.ReportAction += UpdateDeviceControllStatu;
                                    AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                    light.SwitchControl(1);
                                    //控制延时回调
                                    DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                    {
                                        if (Parent == null)
                                        {
                                            return;
                                        }
                                        RemoveUpdateControlDeviceStatuAction(zbGateway);
                                        if (sendedControlCommand == false)
                                        {
                                            DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                        }
                                    });
                                }
                                else
                                {
                                    zbGateway = device.CommonDevice.Gateway;
                                    sendedControlCommand = false;
                                    zbGateway.ReportAction += UpdateDeviceControllStatu;
                                    AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                    light.SwitchControl(0);
                                    //控制延时回调
                                    DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                    {
                                        if (Parent == null)
                                        {
                                            return;
                                        }
                                        RemoveUpdateControlDeviceStatuAction(zbGateway);
                                        if (sendedControlCommand == false)
                                        {
                                            DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                        }
                                    });
                                }
                            };
                            var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                            {
                                Tag = device,
                                IsMoreLines = true
                            };
                            if (Room.CurrentRoom.IsLove)
                            {
                                deleteBtn.TextID = R.MyInternationalizationString.CancelCollect;
                                deleteBtn.BackgroundColor = ZigbeeColor.Current.GXCCancelCollectionBGColor;
                                deleteBtn.MouseUpEventHandler += collectionEvent;
                                deviceRowLayout.AddRightView(deleteBtn);
                            }
                            else if(Room.CurrentRoom.IsSharedRoom)
                            {
                                //不处理
                            }
                            else
                            {
                                deleteBtn.MouseUpEventHandler += delEvent;
                                deviceRowLayout.AddRightView(deleteBtn);
                            }
                            EventHandler<MouseEventArgs> lightHandler = (sender, e) =>
                            {
                                var lightControl = new Phone.Device.Light.LightControl();
                                UserView.HomePage.Instance.AddChidren(lightControl);
                                UserView.HomePage.Instance.PageIndex += 1;
                                lightControl.action = RefreshBodyView;
                                lightControl.Show(device, Room.CurrentRoom);
                            };
                            deviceItemFL.MouseLongEventHandler += lightHandler;
                            deviceItemFL.MouseUpEventHandler += lightHandler;
                            deviceName.MouseUpEventHandler += lightHandler;
                            deviceIMG.MouseUpEventHandler += lightHandler;
                            //collectionBtn.MouseUpEventHandler += (sender, e) =>
                            //{
                            //    if (collectionBtn.IsSelected)
                            //    {
                            //        Room.Lists[0].DeleteDevice(device.FilePath);
                            //        collectionBtn.IsSelected = false;
                            //        if(Room.CurrentRoom==Room.Lists[0])
                            //        {
                            //            RefreshBodyView();
                            //        }
                            //    }
                            //    else
                            //    {
                            //        Room.Lists[0].AddDevice(device.FilePath);
                            //        collectionBtn.IsSelected = true;
                            //    }
                            //    //RefreshBodyView();
                            //};
                            collectionBtn.MouseUpEventHandler += collectionEvent;
                            //var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FilePath);
                            //if (dev == null)
                            //{
                            //    collectionBtn.IsSelected = false;
                            //}
                            //else
                            //{
                            //    collectionBtn.IsSelected = true;
                            //}
                            //不处理
                        }
                        else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.AirSwitch)
                        else
                        {
                            //空气开关
                            var airSwitch = device.CommonDevice as AirSwitch;
                            //补上非远程
                            if (airSwitch.Gateway == null)
                            {
                                continue;
                            }
                            if (airSwitch.Gateway.IsVirtual)
                            {
                                //发送读取状态命令
                                ReadStatus(airSwitch, () =>
                                {
                                    airSwitch.ReadOnOffStatus();
                                    airSwitch.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                });
                            }
                            else
                            {
                                //防止短时间内多次读取设备状态
                                if ((DateTime.Now - airSwitch.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan)
                                {
                                    airSwitch.ReadOnOffStatus();
                                    airSwitch.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                }
                            }
                            var deviceFL = new FrameLayout
                            {
                                Height = Application.GetRealHeight(deviceFL_Height),
                                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                                Tag = device
                            };
                            deviceVerticalScrolViewLayout.AddChidren(deviceFL);
                            var deviceRowLayout = new RowLayout
                            {
                                Y = Application.GetRealHeight(25),
                                Height = Application.GetRealHeight(deviceFL_Height - 25) - 1,
                                LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                                BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                                Radius = CommonPage.BigFormRadius,
                                Tag = device
                            };
                            deviceFL.AddChidren(deviceRowLayout);
                            var deviceItemFL = new FrameLayout()
                            {
                                BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                                Radius = CommonPage.BigFormRadius
                            };
                            deviceRowLayout.AddChidren(deviceItemFL);
                            var deviceIMG = new Button()
                            {
                                X = Application.GetRealWidth(50),
                                Y = Application.GetRealHeight(30),
                                Width = Application.GetMinRealAverage(110),
                                Height = Application.GetMinRealAverage(110),
                                UnSelectedImagePath = device.IconPath,
                                SelectedImagePath = device.OnlineIconPath,
                                IsSelected = airSwitch.IsOnline == 1,
                                Tag = deviceStatus_Online
                            };
                            deviceItemFL.AddChidren(deviceIMG);
                            var deviceName = new Button()
                            {
                                X = Application.GetRealWidth(10),
                                Y = deviceIMG.Bottom,
                                Width = Application.GetRealWidth(180),
                                Height = Application.GetRealHeight(80),
                                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                                TextAlignment = TextAlignment.Center,
                                Text = device.CommonDevice.DeviceEpointName,
                                TextSize = 10,
                                IsMoreLines = true
                            };
                            deviceItemFL.AddChidren(deviceName);
                            var collectionBtn = new Button()
                            {
                                X = deviceItemFL.Right - Application.GetRealWidth(150),
                                Y = Application.GetRealHeight(20),
                                Width = Application.GetMinRealAverage(80),
                                Height = Application.GetMinRealAverage(80),
                                UnSelectedImagePath = "Item/Collection.png",
                                SelectedImagePath = "Item/CollectionSelected.png",
                                Tag = device
                            };
                            //***先隐藏******
                            //deviceItemFL.AddChidren(collectionBtn);
                            var switchBtn = new Button
                            {
                                X = deviceItemFL.Right - Application.GetRealWidth(200),
                                //Y = deviceItemFL.Bottom - Application.GetRealHeight(120),
                                Width = Application.GetMinRealAverage(183),
                                Height = Application.GetMinRealAverage(123),
                                UnSelectedImagePath = "Item/Switch.png",
                                SelectedImagePath = "Item/SwitchSelected.png",
                                IsSelected = airSwitch.OnOffStatus == 1,
                                Tag = deviceStatus_OnOffStatus,
                                //Visible=false
                                Gravity = Gravity.CenterVertical
                            };
                            deviceItemFL.AddChidren(switchBtn);
                            switchBtn.MouseUpEventHandler += (send2, e2) =>
                            {
                                switchBtn.IsSelected = !switchBtn.IsSelected;
                                if (switchBtn.IsSelected == true)
                                {
                                    zbGateway = device.CommonDevice.Gateway;
                                    sendedControlCommand = false;
                                    zbGateway.ReportAction += UpdateDeviceControllStatu;
                                    AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                    airSwitch.SwitchControl(1);
                                    //控制延时回调
                                    DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                    {
                                        if (Parent == null)
                                        {
                                            return;
                                        }
                                        RemoveUpdateControlDeviceStatuAction(zbGateway);
                                        if (sendedControlCommand == false)
                                        {
                                            DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                        }
                                    });
                                }
                                else
                                {
                                    zbGateway = device.CommonDevice.Gateway;
                                    sendedControlCommand = false;
                                    zbGateway.ReportAction += UpdateDeviceControllStatu;
                                    AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                    airSwitch.SwitchControl(0);
                                    //控制延时回调
                                    DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                    {
                                        if (Parent == null)
                                        {
                                            return;
                                        }
                                        RemoveUpdateControlDeviceStatuAction(zbGateway);
                                        if (sendedControlCommand == false)
                                        {
                                            DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                        }
                                    });
                                }
                            };
                            var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                            {
                                Tag = device,
                                IsMoreLines = true
                            };
                            if (Room.CurrentRoom.IsLove)
                            {
                                deleteBtn.TextID = R.MyInternationalizationString.CancelCollect;
                                deleteBtn.BackgroundColor = ZigbeeColor.Current.GXCCancelCollectionBGColor;
                                deleteBtn.MouseUpEventHandler += collectionEvent;
                                deviceRowLayout.AddRightView(deleteBtn);
                            }
                            else if(Room.CurrentRoom.IsSharedRoom)
                            {
                                //不处理
                            }
                            else
                            {
                                deleteBtn.MouseUpEventHandler += delEvent;
                                deviceRowLayout.AddRightView(deleteBtn);
                            }
                            EventHandler<MouseEventArgs> airSwitchHandler = (sender, e) =>
                            {
                                var airSwitchControl = new Phone.Device.AirSwitch.AirSwitchControl();
                                UserView.HomePage.Instance.AddChidren(airSwitchControl);
                                UserView.HomePage.Instance.PageIndex += 1;
                                airSwitchControl.action = RefreshBodyView;
                                airSwitchControl.Show(device, Room.CurrentRoom);
                            };
                            deviceItemFL.MouseLongEventHandler += airSwitchHandler;
                            deviceItemFL.MouseUpEventHandler += airSwitchHandler;
                            deviceName.MouseUpEventHandler += airSwitchHandler;
                            deviceIMG.MouseUpEventHandler += airSwitchHandler;
                            //collectionBtn.MouseUpEventHandler += (sender, e) =>
                            //{
                            //    if (collectionBtn.IsSelected)
                            //    {
                            //        Room.Lists[0].DeleteDevice(device.FilePath);
                            //        collectionBtn.IsSelected = false;
                            //        if(Room.CurrentRoom==Room.Lists[0])
                            //        {
                            //            RefreshBodyView();
                            //        }
                            //    }
                            //    else
                            //    {
                            //        Room.Lists[0].AddDevice(device.FilePath);
                            //        collectionBtn.IsSelected = true;
                            //    }
                            //    //RefreshBodyView();
                            //};
                            collectionBtn.MouseUpEventHandler += collectionEvent;
                            //var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FilePath);
                            //if (dev == null)
                            //{
                            //    collectionBtn.IsSelected = false;
                            //}
                            //else
                            //{
                            //    collectionBtn.IsSelected = true;
                            //}
                            deleteBtn.MouseUpEventHandler += delEvent;
                            deviceRowLayout.AddRightView(deleteBtn);
                        }
                        else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.Thermostat)
                        EventHandler<MouseEventArgs> airSwitchHandler = (sender, e) =>
                        {
                            //恒温器-AC-空调
                            var ac = device.CommonDevice as AC;
                            var airSwitchControl = new Phone.Device.AirSwitch.AirSwitchControl();
                            UserView.HomePage.Instance.AddChidren(airSwitchControl);
                            UserView.HomePage.Instance.PageIndex += 1;
                            airSwitchControl.action = RefreshBodyView;
                            airSwitchControl.Show(device, Room.CurrentRoom);
                        };
                        //deviceItemFL.MouseLongEventHandler += airSwitchHandler;
                        deviceItemFL.MouseUpEventHandler += airSwitchHandler;
                        deviceName.MouseUpEventHandler += airSwitchHandler;
                        deviceIMG.MouseUpEventHandler += airSwitchHandler;
                            //补上非远程
                            if (ac.Gateway == null)
                        //collectionBtn.MouseUpEventHandler += (sender, e) =>
                        //{
                        //    if (collectionBtn.IsSelected)
                        //    {
                        //        Room.Lists[0].DeleteDevice(device.FilePath);
                        //        collectionBtn.IsSelected = false;
                        //        if(Room.CurrentRoom==Room.Lists[0])
                        //        {
                        //            RefreshBodyView();
                        //        }
                        //    }
                        //    else
                        //    {
                        //        Room.Lists[0].AddDevice(device.FilePath);
                        //        collectionBtn.IsSelected = true;
                        //    }
                        //    //RefreshBodyView();
                        //};
                        collectionBtn.MouseUpEventHandler += collectionEvent;
                        //var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FilePath);
                        //if (dev == null)
                        //{
                        //    collectionBtn.IsSelected = false;
                        //}
                        //else
                        //{
                        //    collectionBtn.IsSelected = true;
                        //}
                    }
                    else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.Thermostat)
                    {
                        //恒温器-AC-空调
                        var ac = device.CommonDevice as AC;
                        //补上非远程
                        if (ac.Gateway == null)
                        {
                            continue;
                        }
                        if (ac.Gateway.IsVirtual)
                        {
                            //发送读取状态命令
                            ReadStatus(ac, () =>
                            {
                                continue;
                                ac.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                ac.ReadLocalTemperature();
                                ac.ReadCoolingSetpoint();
                                ac.ReadHeatingSetpoint();
                                ac.ReadAutoSetpoint();
                                ac.ReadFanMode();
                                ac.ReadSystemMode();
                            });
                        }
                        else
                        {
                            //防止短时间内多次读取设备状态
                            if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan)
                            {
                                ac.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                ac.ReadLocalTemperature();
                                ac.ReadCoolingSetpoint();
                                ac.ReadHeatingSetpoint();
                                ac.ReadAutoSetpoint();
                                ac.ReadFanMode();
                                ac.ReadSystemMode();
                            }
                            if (ac.Gateway.IsVirtual)
                        }
                        var deviceFL = new FrameLayout
                        {
                            Height = Application.GetRealHeight(deviceFL_Height),
                            BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                            Tag = device
                        };
                        deviceVerticalScrolViewLayout.AddChidren(deviceFL);
                        var deviceRowLayout = new RowLayout
                        {
                            Y = Application.GetRealHeight(25),
                            Height = Application.GetRealHeight(deviceFL_Height - 25) - 1,
                            LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                            BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                            Radius = CommonPage.BigFormRadius,
                            Tag = device
                        };
                        deviceFL.AddChidren(deviceRowLayout);
                        var deviceItemFL = new FrameLayout()
                        {
                            BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                            Radius = CommonPage.BigFormRadius
                        };
                        deviceRowLayout.AddChidren(deviceItemFL);
                        var deviceIMG = new Button()
                        {
                            X = Application.GetRealWidth(50),
                            Y = Application.GetRealHeight(30),
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            UnSelectedImagePath = device.IconPath,
                            SelectedImagePath = device.OnlineIconPath,
                            IsSelected = ac.IsOnline == 1,
                            Tag = deviceStatus_Online
                        };
                        deviceItemFL.AddChidren(deviceIMG);
                        var deviceName = new Button()
                        {
                            X = Application.GetRealWidth(10),
                            Y = deviceIMG.Bottom,
                            Width = Application.GetRealWidth(180),
                            Height = Application.GetRealHeight(80),
                            TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                            TextAlignment = TextAlignment.Center,
                            Text = device.CommonDevice.DeviceEpointName,
                            TextSize = 10,
                            IsMoreLines = true
                        };
                        deviceItemFL.AddChidren(deviceName);
                        var collectionBtn = new Button()
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(150),
                            Y = Application.GetRealHeight(20),
                            Width = Application.GetMinRealAverage(80),
                            Height = Application.GetMinRealAverage(80),
                            UnSelectedImagePath = "Item/Collection.png",
                            SelectedImagePath = "Item/CollectionSelected.png",
                            Tag = device
                        };
                        //***先隐藏******
                        //deviceItemFL.AddChidren(collectionBtn);
                        //减
                        var reduceBtnBG = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = deviceName.Right,
                            Width = Application.GetMinRealAverage(250),
                            Height = Application.GetMinRealAverage(250),
                            Gravity = Gravity.CenterVertical,
                        };
                        deviceItemFL.AddChidren(reduceBtnBG);
                        var reduceBtn = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = Application.GetRealWidth(30) + deviceName.Right,
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            Gravity = Gravity.CenterVertical,
                            UnSelectedImagePath = "Item/Reduce.png",
                            SelectedImagePath = "Item/ReduceSelected.png",
                        };
                        deviceItemFL.AddChidren(reduceBtn);
                        //当前温度
                        var currentTemperatureBtn = new Button()
                        {
                            X = Application.GetRealWidth(50) + reduceBtn.Right,
                            Width = Application.GetRealWidth(200),
                            Height = Application.GetRealHeight(110),
                            Gravity = Gravity.CenterVertical,
                            TextColor = ZigbeeColor.Current.TextBlack,
                            TextSize = 16,
                            Text = $"{Device.AC.ACControlBase.GetCurrentModeTemperature(ac)} °C",
                            Tag = "Temparetrue"
                        };
                        deviceItemFL.AddChidren(currentTemperatureBtn);
                        reduceBtn.MouseUpEventHandler += (send2, e2) =>
                        {
                            if (Device.AC.ACControlBase.IsOpen(ac) == false)
                            {
                                //发送读取状态命令
                                ReadStatus(ac, () =>
                                {
                                    ac.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    ac.ReadFanMode();
                                    ac.ReadSystemMode();
                                    ac.ReadLocalTemperature();
                                    ac.ReadCoolingSetpoint();
                                    ac.ReadHeatingSetpoint();
                                });
                                Device.AC.ACControlBase.ShowACIsCloseTip();
                                return;
                            }
                            else
                                //cool
                                if (ac.currentSystemMode == 3 || ac.currentSystemMode == 8)
                            {
                                //防止短时间内多次读取设备状态
                                if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan)
                                if (ac.currentCoolingSetpoint <= ACControlBase.Temperature_Low)
                                {
                                    ac.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    ac.ReadFanMode();
                                    ac.ReadSystemMode();
                                    ac.ReadLocalTemperature();
                                    ac.ReadCoolingSetpoint();
                                    ac.ReadHeatingSetpoint();
                                }
                            }
                            var deviceFL = new FrameLayout
                            {
                                Height = Application.GetRealHeight(deviceFL_Height),
                                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                                Tag = device
                            };
                            deviceVerticalScrolViewLayout.AddChidren(deviceFL);
                            var deviceRowLayout = new RowLayout
                            {
                                Y = Application.GetRealHeight(25),
                                Height = Application.GetRealHeight(deviceFL_Height - 25) - 1,
                                LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                                BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                                Radius = CommonPage.BigFormRadius,
                                Tag = device
                            };
                            deviceFL.AddChidren(deviceRowLayout);
                            var deviceItemFL = new FrameLayout()
                            {
                                BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                                Radius = CommonPage.BigFormRadius
                            };
                            deviceRowLayout.AddChidren(deviceItemFL);
                            var deviceIMG = new Button()
                            {
                                X = Application.GetRealWidth(50),
                                Y = Application.GetRealHeight(30),
                                Width = Application.GetMinRealAverage(110),
                                Height = Application.GetMinRealAverage(110),
                                UnSelectedImagePath = device.IconPath,
                                SelectedImagePath = device.OnlineIconPath,
                                IsSelected = ac.IsOnline == 1,
                                Tag = deviceStatus_Online
                            };
                            deviceItemFL.AddChidren(deviceIMG);
                            var deviceName = new Button()
                            {
                                X = Application.GetRealWidth(10),
                                Y = deviceIMG.Bottom,
                                Width = Application.GetRealWidth(180),
                                Height = Application.GetRealHeight(80),
                                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                                TextAlignment = TextAlignment.Center,
                                Text = device.CommonDevice.DeviceEpointName,
                                TextSize = 10,
                                IsMoreLines = true
                            };
                            deviceItemFL.AddChidren(deviceName);
                            var collectionBtn = new Button()
                            {
                                X = deviceItemFL.Right - Application.GetRealWidth(150),
                                Y = Application.GetRealHeight(20),
                                Width = Application.GetMinRealAverage(80),
                                Height = Application.GetMinRealAverage(80),
                                UnSelectedImagePath = "Item/Collection.png",
                                SelectedImagePath = "Item/CollectionSelected.png",
                                Tag = device
                            };
                            //***先隐藏******
                            //deviceItemFL.AddChidren(collectionBtn);
                            //减
                            var reduceBtn = new Device.CommonForm.SelectedStatuButton()
                            {
                                X = Application.GetRealWidth(30) + deviceName.Right,
                                Width = Application.GetMinRealAverage(110),
                                Height = Application.GetMinRealAverage(110),
                                Gravity = Gravity.CenterVertical,
                                UnSelectedImagePath = "Item/Reduce.png",
                                SelectedImagePath = "Item/ReduceSelected.png",
                            };
                            deviceItemFL.AddChidren(reduceBtn);
                            //当前温度
                            var currentTemperatureBtn = new Button()
                            {
                                X = Application.GetRealWidth(50) + reduceBtn.Right,
                                Width = Application.GetRealWidth(200),
                                Height = Application.GetRealHeight(110),
                                Gravity = Gravity.CenterVertical,
                                TextColor = ZigbeeColor.Current.TextBlack,
                                TextSize = 16,
                                Text = $"{Device.AC.ACControlBase.GetCurrentModeTemperature(ac)} °C",
                                Tag = "Temparetrue"
                            };
                            deviceItemFL.AddChidren(currentTemperatureBtn);
                            reduceBtn.MouseUpEventHandler += (send2, e2) =>
                            {
                                if (Device.AC.ACControlBase.IsOpen(ac) == false)
                                {
                                    Device.AC.ACControlBase.ShowACIsCloseTip();
                                    return;
                                }
                                //cool
                                if (ac.currentSystemMode == 3)
                                {
                                    ac.currentCoolingSetpoint -= 1;
                                    ac.SetCoolingTemperatureAsync(ac.currentCoolingSetpoint);
                                    currentTemperatureBtn.Text = $"{ac.currentCoolingSetpoint} °C";
                                }
                                ac.currentCoolingSetpoint -= 1;
                                ac.SetCoolingTemperatureAsync(ac.currentCoolingSetpoint * 100);
                                currentTemperatureBtn.Text = $"{ac.currentCoolingSetpoint} °C";
                            }
                                //heat
                                else if (ac.currentSystemMode == 4)
                            {
                                if (ac.currentHeatingSetpoint <= ACControlBase.Temperature_Low)
                                {
                                    ac.currentHeatingSetpoint -= 1;
                                    ac.SetHeatingTemperatureAsync(ac.currentHeatingSetpoint);
                                    currentTemperatureBtn.Text = $"{ac.currentHeatingSetpoint} °C";
                                    return;
                                }
                                ac.currentHeatingSetpoint -= 1;
                                ac.SetHeatingTemperatureAsync(ac.currentHeatingSetpoint * 100);
                                currentTemperatureBtn.Text = $"{ac.currentHeatingSetpoint} °C";
                            }
                            else if (ac.currentSystemMode == 1)
                            {
                                if (ac.currentAutoSetpoint <= ACControlBase.Temperature_Low)
                                {
                                    return;
                                }
                                ac.currentAutoSetpoint -= 1;
                                ac.SetAutoTemperatureAsync(ac.currentAutoSetpoint * 100);
                                currentTemperatureBtn.Text = $"{ac.currentAutoSetpoint} °C";
                            }
                                //auto
                                //dry
                                //currentTemperatureBtn.Text = $"{Device.AC.ACControlBase.GetCurrentModeTemperature(ac)} °C";
                            };
                            var addBtn = new Device.CommonForm.SelectedStatuButton()
                            {
                                X = Application.GetRealWidth(30) + currentTemperatureBtn.Right,
                                Width = Application.GetMinRealAverage(110),
                                Height = Application.GetMinRealAverage(110),
                                Gravity = Gravity.CenterVertical,
                                UnSelectedImagePath = "Item/Add.png",
                                SelectedImagePath = "Item/AddSelected.png",
                            };
                            deviceItemFL.AddChidren(addBtn);
                        var addBtnBG = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = currentTemperatureBtn.Right,
                            Width = Application.GetMinRealAverage(250),
                            Height = Application.GetMinRealAverage(250),
                            Gravity = Gravity.CenterVertical
                        };
                        deviceItemFL.AddChidren(addBtnBG);
                            addBtn.MouseUpEventHandler += (send2, e2) =>
                        var addBtn = new Device.CommonForm.SelectedStatuButton()
                        {
                            X = Application.GetRealWidth(30) + currentTemperatureBtn.Right,
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            Gravity = Gravity.CenterVertical,
                            UnSelectedImagePath = "Item/Add.png",
                            SelectedImagePath = "Item/AddSelected.png",
                        };
                        deviceItemFL.AddChidren(addBtn);
                        addBtn.MouseUpEventHandler += (send2, e2) =>
                        {
                            if (Device.AC.ACControlBase.IsOpen(ac) == false)
                            {
                                if (Device.AC.ACControlBase.IsOpen(ac) == false)
                                Device.AC.ACControlBase.ShowACIsCloseTip();
                                return;
                            }
                                //cool
                                if (ac.currentSystemMode == 3 || ac.currentSystemMode == 8)
                            {
                                if (ac.currentCoolingSetpoint >= ACControlBase.Temperature_High)
                                {
                                    Device.AC.ACControlBase.ShowACIsCloseTip();
                                    return;
                                }
                                //cool
                                if (ac.currentSystemMode == 3)
                                {
                                    ac.currentCoolingSetpoint += 1;
                                    ac.SetCoolingTemperatureAsync(ac.currentCoolingSetpoint);
                                ac.currentCoolingSetpoint += 1;
                                ac.SetCoolingTemperatureAsync(ac.currentCoolingSetpoint * 100);
                                    currentTemperatureBtn.Text = $"{ac.currentCoolingSetpoint} °C";
                                }
                                currentTemperatureBtn.Text = $"{ac.currentCoolingSetpoint} °C";
                            }
                                //heat
                                else if (ac.currentSystemMode == 4)
                            {
                                if (ac.currentHeatingSetpoint >= ACControlBase.Temperature_High)
                                {
                                    ac.currentHeatingSetpoint += 1;
                                    ac.SetHeatingTemperatureAsync(ac.currentHeatingSetpoint);
                                    currentTemperatureBtn.Text = $"{ac.currentHeatingSetpoint} °C";
                                    return;
                                }
                                //auto
                                //dry
                            };
                                ac.currentHeatingSetpoint += 1;
                                ac.SetHeatingTemperatureAsync(ac.currentHeatingSetpoint * 100);
                            var switchBtn = new Button
                            {
                                X = deviceItemFL.Right - Application.GetRealWidth(200),
                                //Y = deviceItemFL.Bottom - Application.GetRealHeight(120),
                                Width = Application.GetMinRealAverage(183),
                                Height = Application.GetMinRealAverage(123),
                                UnSelectedImagePath = "Item/Switch.png",
                                SelectedImagePath = "Item/SwitchSelected.png",
                                IsSelected = ac.currentSystemMode != 0,
                                Tag = deviceStatus_OnOffStatus,
                                //Visible=false
                                Gravity = Gravity.CenterVertical
                            };
                            deviceItemFL.AddChidren(switchBtn);
                            switchBtn.MouseUpEventHandler += (send2, e2) =>
                            {
                                switchBtn.IsSelected = !switchBtn.IsSelected;
                                if (switchBtn.IsSelected == true)
                                {
                                    zbGateway = device.CommonDevice.Gateway;
                                    sendedControlCommand = false;
                                    zbGateway.ReportAction += UpdateDeviceControllStatu;
                                    AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                    ac.Open();
                                    //控制延时回调
                                    //DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                    //{
                                    //    if (Parent == null)
                                    //    {
                                    //        return;
                                    //    }
                                    //    RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    //    if (sendedControlCommand == false)
                                    //    {
                                    //        DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    //    }
                                    //});
                                }
                                else
                                {
                                    zbGateway = device.CommonDevice.Gateway;
                                    sendedControlCommand = false;
                                    zbGateway.ReportAction += UpdateDeviceControllStatu;
                                    AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                    ac.Close();
                                    //控制延时回调
                                    //DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                    //{
                                    //    if (Parent == null)
                                    //    {
                                    //        return;
                                    //    }
                                    //    RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    //    if (sendedControlCommand == false)
                                    //    {
                                    //        DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    //    }
                                    //});
                                }
                            };
                            var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                            {
                                Tag = device,
                                IsMoreLines = true
                            };
                            if (Room.CurrentRoom.IsLove)
                            {
                                deleteBtn.TextID = R.MyInternationalizationString.CancelCollect;
                                deleteBtn.BackgroundColor = ZigbeeColor.Current.GXCCancelCollectionBGColor;
                                deleteBtn.MouseUpEventHandler += collectionEvent;
                                deviceRowLayout.AddRightView(deleteBtn);
                                currentTemperatureBtn.Text = $"{ac.currentHeatingSetpoint} °C";
                            }
                            else if(Room.CurrentRoom.IsSharedRoom)
                            else if (ac.currentSystemMode == 1)
                            {
                                //不处理
                            }
                            else
                            {
                                deleteBtn.MouseUpEventHandler += delEvent;
                                deviceRowLayout.AddRightView(deleteBtn);
                                if (ac.currentAutoSetpoint >= ACControlBase.Temperature_High)
                                {
                                    return;
                                }
                                ac.currentAutoSetpoint += 1;
                                ac.SetAutoTemperatureAsync(ac.currentAutoSetpoint * 100);
                                currentTemperatureBtn.Text = $"{ac.currentAutoSetpoint} °C";
                            }
                        };
                            EventHandler<MouseEventArgs> acHandler = (sender, e) =>
                            {
                                var acControl = new Phone.Device.AC.ACControl { };
                                UserView.HomePage.Instance.AddChidren(acControl);
                                UserView.HomePage.Instance.PageIndex += 1;
                                acControl.action = RefreshBodyView;
                                acControl.Show(device, Room.CurrentRoom);
                            };
                            deviceItemFL.MouseLongEventHandler += acHandler;
                            deviceItemFL.MouseUpEventHandler += acHandler;
                            deviceName.MouseUpEventHandler += acHandler;
                            deviceIMG.MouseUpEventHandler += acHandler;
                        }
                        else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.DimmableLight)
                        var switchBtnBG = new Button
                        {
                            //调光灯
                            var dimmableLight = device.CommonDevice as DimmableLight;
                            X = deviceItemFL.Right - Application.GetRealWidth(250),
                            Width = Application.GetMinRealAverage(250),
                            Height = Application.GetMinRealAverage(250),
                            Gravity = Gravity.CenterVertical
                        };
                        deviceItemFL.AddChidren(switchBtnBG);
                        var switchBtn = new Button
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(200),
                            //Y = deviceItemFL.Bottom - Application.GetRealHeight(120),
                            Width = Application.GetMinRealAverage(183),
                            Height = Application.GetMinRealAverage(123),
                            UnSelectedImagePath = "Item/Switch.png",
                            SelectedImagePath = "Item/SwitchSelected.png",
                            IsSelected = ac.currentSystemMode != 0,
                            Tag = deviceStatus_OnOffStatus,
                            //Visible=false
                            Gravity = Gravity.CenterVertical
                        };
                        deviceItemFL.AddChidren(switchBtn);
                        switchBtn.MouseUpEventHandler += (send2, e2) =>
                        {
                            switchBtn.IsSelected = !switchBtn.IsSelected;
                            if (switchBtn.IsSelected == true)
                            {
                                zbGateway = device.CommonDevice.Gateway;
                                sendedControlCommand = false;
                                zbGateway.ReportAction += UpdateDeviceControllStatu;
                                AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                            //补上非远程
                            if (dimmableLight.Gateway == null)
                            {
                                continue;
                            }
                            if (dimmableLight.Gateway.IsVirtual)
                            {
                                //发送读取状态命令
                                ReadStatus(dimmableLight, () =>
                                {
                                    dimmableLight.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    dimmableLight.ReadOnOffStatus();
                                    dimmableLight.ReadLevel();
                                });
                            }
                                ac.Open();
                                    //控制延时回调
                                    //DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                    //{
                                    //    if (Parent == null)
                                    //    {
                                    //        return;
                                    //    }
                                    //    RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    //    if (sendedControlCommand == false)
                                    //    {
                                    //        DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    //    }
                                    //});
                                }
                            else
                            {
                                //防止短时间内多次读取设备状态
                                if ((DateTime.Now - dimmableLight.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan)
                                {
                                    dimmableLight.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    dimmableLight.ReadOnOffStatus();
                                    dimmableLight.ReadLevel();
                                zbGateway = device.CommonDevice.Gateway;
                                sendedControlCommand = false;
                                zbGateway.ReportAction += UpdateDeviceControllStatu;
                                AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice);
                                ac.Close();
                                    //控制延时回调
                                    //DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                    //{
                                    //    if (Parent == null)
                                    //    {
                                    //        return;
                                    //    }
                                    //    RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    //    if (sendedControlCommand == false)
                                    //    {
                                    //        DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    //    }
                                    //});
                                }
                        };
                        var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                        {
                            Tag = device,
                            IsMoreLines = true
                        };
                        if (Room.CurrentRoom.IsLove)
                        {
                            deleteBtn.TextID = R.MyInternationalizationString.CancelCollect;
                            deleteBtn.BackgroundColor = ZigbeeColor.Current.GXCCancelCollectionBGColor;
                            deleteBtn.MouseUpEventHandler += collectionEvent;
                            deviceRowLayout.AddRightView(deleteBtn);
                        }
                        else if (Room.CurrentRoom.IsSharedRoom)
                        {
                            //不处理
                        }
                        else
                        {
                            deleteBtn.MouseUpEventHandler += delEvent;
                            deviceRowLayout.AddRightView(deleteBtn);
                        }
                        EventHandler<MouseEventArgs> acHandler = (sender, e) =>
                        {
                            var acControl = new Phone.Device.AC.ACControl { };
                            UserView.HomePage.Instance.AddChidren(acControl);
                            UserView.HomePage.Instance.PageIndex += 1;
                            acControl.action = RefreshBodyView;
                            acControl.Show(device, Room.CurrentRoom);
                        };
                        //deviceItemFL.MouseLongEventHandler += acHandler;
                        deviceItemFL.MouseUpEventHandler += acHandler;
                        deviceName.MouseUpEventHandler += acHandler;
                        deviceIMG.MouseUpEventHandler += acHandler;
                    }
                    else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.DimmableLight)
                    {
                        //调光灯
                        var dimmableLight = device.CommonDevice as DimmableLight;
                        //补上非远程
                        if (dimmableLight.Gateway == null)
                        {
                            continue;
                        }
                        if (dimmableLight.Gateway.IsVirtual)
                        {
                            //发送读取状态命令
                            ReadStatus(dimmableLight, () =>
                            {
                                dimmableLight.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                dimmableLight.ReadOnOffStatus();
                                dimmableLight.ReadLevel();
                            });
                        }
                        else
                        {
                            //防止短时间内多次读取设备状态
                            if ((DateTime.Now - dimmableLight.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan)
                            {
                                dimmableLight.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                dimmableLight.ReadOnOffStatus();
                                dimmableLight.ReadLevel();
                            }
                        }
                            var deviceFL = new FrameLayout
                            {
                                Height = Application.GetRealHeight(deviceFL_Height),
                                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                                Tag = device
                            };
                            deviceVerticalScrolViewLayout.AddChidren(deviceFL);
                            var deviceRowLayout = new RowLayout
                            {
                                Y = Application.GetRealHeight(25),
                                Height = Application.GetRealHeight(deviceFL_Height - 25) - 1,
                                LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                                BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                                Radius = CommonPage.BigFormRadius,
                                Tag = device
                            };
                            deviceFL.AddChidren(deviceRowLayout);
                        var deviceFL = new FrameLayout
                        {
                            Height = Application.GetRealHeight(deviceFL_Height),
                            BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                            Tag = device
                        };
                        deviceVerticalScrolViewLayout.AddChidren(deviceFL);
                        var deviceRowLayout = new RowLayout
                        {
                            Y = Application.GetRealHeight(25),
                            Height = Application.GetRealHeight(deviceFL_Height - 25) - 1,
                            LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                            BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                            Radius = CommonPage.BigFormRadius,
                            Tag = device
                        };
                        deviceFL.AddChidren(deviceRowLayout);
                            var deviceItemFL = new FrameLayout()
                            {
                                BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                                Radius = CommonPage.BigFormRadius
                            };
                            deviceRowLayout.AddChidren(deviceItemFL);
                            var deviceIMG = new Button()
                            {
                                X = Application.GetRealWidth(50),
                                Y = Application.GetRealHeight(30),
                                Width = Application.GetMinRealAverage(110),
                                Height = Application.GetMinRealAverage(110),
                                UnSelectedImagePath = device.IconPath,
                                SelectedImagePath = device.OnlineIconPath,
                                IsSelected = dimmableLight.IsOnline == 1,
                                Tag = deviceStatus_Online
                            };
                            deviceItemFL.AddChidren(deviceIMG);
                            var deviceName = new Button()
                            {
                                X = Application.GetRealWidth(10),
                                Y = deviceIMG.Bottom,
                                Width = Application.GetRealWidth(180),
                                Height = Application.GetRealHeight(80),
                                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                                TextAlignment = TextAlignment.Center,
                                Text = device.CommonDevice.DeviceEpointName,
                                TextSize = 10,
                                IsMoreLines = true
                            };
                            deviceItemFL.AddChidren(deviceName);
                        var deviceItemFL = new FrameLayout()
                        {
                            BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
                            Radius = CommonPage.BigFormRadius
                        };
                        deviceRowLayout.AddChidren(deviceItemFL);
                        var deviceIMG = new Button()
                        {
                            X = Application.GetRealWidth(50),
                            Y = Application.GetRealHeight(30),
                            Width = Application.GetMinRealAverage(110),
                            Height = Application.GetMinRealAverage(110),
                            UnSelectedImagePath = device.IconPath,
                            SelectedImagePath = device.OnlineIconPath,
                            IsSelected = dimmableLight.IsOnline == 1,
                            Tag = deviceStatus_Online
                        };
                        deviceItemFL.AddChidren(deviceIMG);
                        var deviceName = new Button()
                        {
                            X = Application.GetRealWidth(10),
                            Y = deviceIMG.Bottom,
                            Width = Application.GetRealWidth(180),
                            Height = Application.GetRealHeight(80),
                            TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                            TextAlignment = TextAlignment.Center,
                            Text = device.CommonDevice.DeviceEpointName,
                            TextSize = 10,
                            IsMoreLines = true
                        };
                        deviceItemFL.AddChidren(deviceName);
                            var levelSeekBar = new HorizontalSeekBar()
                            {
                                X=deviceIMG.Right+Application.GetRealWidth(50),
                                Width =  Application.GetRealWidth(500),
                                Height = Application.GetRealHeight(80),
                                Gravity = Gravity.CenterVertical,
                                BackgroundColor = ZigbeeColor.Current.GXCSliderUnSelectedColor,
                                ThumbColor = ZigbeeColor.Current.GXCButtonBlueColor,
                                BorderColor = ZigbeeColor.Current.GXCButtonBlueColor,
                                ProgressColor = ZigbeeColor.Current.GXCButtonBlueColor,
                                Max = 254,
                                Tag = "LevelSeekBar",
                                Progress = dimmableLight.Level,
                                SleepTime=sleepSpan
                            };
                            deviceItemFL.AddChidren(levelSeekBar);
                            levelSeekBar.ProgressChanged += (send2, e2) =>
                            {
                                dimmableLight.SetLevel(levelSeekBar.Progress);
                            };
                        var levelSeekBar = new HorizontalSeekBar()
                        {
                            X = deviceIMG.Right + Application.GetRealWidth(50),
                            Width = Application.GetRealWidth(500),
                            Height = Application.GetRealHeight(80),
                            Gravity = Gravity.CenterVertical,
                            BackgroundColor = ZigbeeColor.Current.GXCSliderUnSelectedColor,
                            ThumbColor = ZigbeeColor.Current.GXCButtonBlueColor,
                            BorderColor = ZigbeeColor.Current.GXCButtonBlueColor,
                            ProgressColor = ZigbeeColor.Current.GXCButtonBlueColor,
                            Max = 254,
                            Tag = "LevelSeekBar",
                            Progress = dimmableLight.Level,
                            SleepTime = sleepSpan
                        };
                        deviceItemFL.AddChidren(levelSeekBar);
                        levelSeekBar.ProgressChanged += (send2, e2) =>
                        {
                            dimmableLight.SetLevel(levelSeekBar.Progress);
                        };
                            var collectionBtn = new Button()
                        var collectionBtn = new Button()
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(150),
                            Y = Application.GetRealHeight(20),
                            Width = Application.GetMinRealAverage(80),
                            Height = Application.GetMinRealAverage(80),
                            UnSelectedImagePath = "Item/Collection.png",
                            SelectedImagePath = "Item/CollectionSelected.png",
                            Tag = device
                        };
                        //***先隐藏******
                        //deviceItemFL.AddChidren(collectionBtn);
                        var switchBtnBG = new Button
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(250),
                            Width = Application.GetMinRealAverage(250),
                            Height = Application.GetMinRealAverage(250),
                            Gravity = Gravity.CenterVertical
                        };
                        deviceItemFL.AddChidren(switchBtnBG);
                        var switchBtn = new Button
                        {
                            X = deviceItemFL.Right - Application.GetRealWidth(200),
                            //Y = deviceItemFL.Bottom - Application.GetRealHeight(120),
                            Width = Application.GetMinRealAverage(183),
                            Height = Application.GetMinRealAverage(123),
                            UnSelectedImagePath = "Item/Switch.png",
                            SelectedImagePath = "Item/SwitchSelected.png",
                            IsSelected = dimmableLight.OnOffStatus == 1,
                            Tag = deviceStatus_OnOffStatus,
                            //Visible=false
                            Gravity = Gravity.CenterVertical
                        };
                        deviceItemFL.AddChidren(switchBtn);
                        switchBtn.MouseUpEventHandler += (send2, e2) =>
                        {
                            switchBtn.IsSelected = !switchBtn.IsSelected;
                            if (switchBtn.IsSelected == true)
                            {
                                X = deviceItemFL.Right - Application.GetRealWidth(150),
                                Y = Application.GetRealHeight(20),
                                Width = Application.GetMinRealAverage(80),
                                Height = Application.GetMinRealAverage(80),
                                UnSelectedImagePath = "Item/Collection.png",
                                SelectedImagePath = "Item/CollectionSelected.png",
                                Tag = device
                            };
                            //***先隐藏******
                            //deviceItemFL.AddChidren(collectionBtn);
                            var switchBtn = new Button
                            {
                                X = deviceItemFL.Right - Application.GetRealWidth(200),
                                //Y = deviceItemFL.Bottom - Application.GetRealHeight(120),
                                Width = Application.GetMinRealAverage(183),
                                Height = Application.GetMinRealAverage(123),
                                UnSelectedImagePath = "Item/Switch.png",
                                SelectedImagePath = "Item/SwitchSelected.png",
                                IsSelected = dimmableLight.OnOffStatus == 1,
                                Tag = deviceStatus_OnOffStatus,
                                //Visible=false
                                Gravity = Gravity.CenterVertical
                            };
                            deviceItemFL.AddChidren(switchBtn);
                            switchBtn.MouseUpEventHandler += (send2, e2) =>
                            {
                                switchBtn.IsSelected = !switchBtn.IsSelected;
                                if (switchBtn.IsSelected == true)
                                {
                                    //zbGateway = device.CommonDevice.Gateway;
                                    //sendedControlCommand = false;
                                    //zbGateway.ReportAction += UpdateDeviceControllStatu;
@@ -2344,19 +2564,19 @@
                                    //控制延时回调
                                    //DeviceUI.SendCommandDelayAction(device.CommonDevice, () =>
                                    //{
                                        //if (Parent == null)
                                        //{
                                        //    return;
                                        //}
                                        //RemoveUpdateControlDeviceStatuAction(zbGateway);
                                        //if (sendedControlCommand == false)
                                        //{
                                        //    DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                        //}
                                    //if (Parent == null)
                                    //{
                                    //    return;
                                    //}
                                    //RemoveUpdateControlDeviceStatuAction(zbGateway);
                                    //if (sendedControlCommand == false)
                                    //{
                                    //    DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL);
                                    //}
                                    //});
                                }
                                else
                                {
                            else
                            {
                                    //zbGateway = device.CommonDevice.Gateway;
                                    //sendedControlCommand = false;
                                    //zbGateway.ReportAction += UpdateDeviceControllStatu;
@@ -2378,87 +2598,83 @@
                                    //    }
                                    //});
                                }
                            };
                        };
                            var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                            {
                                Tag = device,
                                IsMoreLines = true
                            };
                            if (Room.CurrentRoom.IsLove)
                            {
                                deleteBtn.TextID = R.MyInternationalizationString.CancelCollect;
                                deleteBtn.BackgroundColor = ZigbeeColor.Current.GXCCancelCollectionBGColor;
                                deleteBtn.MouseUpEventHandler += collectionEvent;
                                deviceRowLayout.AddRightView(deleteBtn);
                            }
                            else if(Room.CurrentRoom.IsSharedRoom)
                            {
                                //不处理
                            }
                            else
                            {
                                deleteBtn.MouseUpEventHandler += delEvent;
                                deviceRowLayout.AddRightView(deleteBtn);
                            }
                            EventHandler<MouseEventArgs> dimmableLightHandler = (sender, e) =>
                            {
                                var dimmableLightControl = new Phone.Device.Light.DimmableLightControl();
                                UserView.HomePage.Instance.AddChidren(dimmableLightControl);
                                UserView.HomePage.Instance.PageIndex += 1;
                                UserView.HomePage.Instance.ScrollEnabled = false;
                                dimmableLightControl.action = RefreshBodyView;
                                dimmableLightControl.Show(device, Room.CurrentRoom);
                            };
                            deviceItemFL.MouseLongEventHandler += dimmableLightHandler;
                           deviceItemFL.MouseUpEventHandler += dimmableLightHandler;
                           deviceName.MouseUpEventHandler += dimmableLightHandler;
                            deviceIMG.MouseUpEventHandler += dimmableLightHandler;
                            //collectionBtn.MouseUpEventHandler += (sender, e) =>
                            //{
                            //    if (collectionBtn.IsSelected)
                            //    {
                            //        Room.Lists[0].DeleteDevice(device.FilePath);
                            //        collectionBtn.IsSelected = false;
                            //        if(Room.CurrentRoom==Room.Lists[0])
                            //        {
                            //            RefreshBodyView();
                            //        }
                            //    }
                            //    else
                            //    {
                            //        Room.Lists[0].AddDevice(device.FilePath);
                            //        collectionBtn.IsSelected = true;
                            //    }
                            //    //RefreshBodyView();
                            //};
                            collectionBtn.MouseUpEventHandler += collectionEvent;
                            //var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FilePath);
                            //if (dev == null)
                            //{
                            //    collectionBtn.IsSelected = false;
                            //}
                            //else
                            //{
                            //    collectionBtn.IsSelected = true;
                            //}
                        }
                        else if (device.CommonDevice.Type == DeviceType.OnOffSwitch)
                        var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                        {
                            //按键
                            var panel = (Panel)device.CommonDevice;
                            Tag = device,
                            IsMoreLines = true
                        };
                        if (Room.CurrentRoom.IsLove)
                        {
                            deleteBtn.TextID = R.MyInternationalizationString.CancelCollect;
                            deleteBtn.BackgroundColor = ZigbeeColor.Current.GXCCancelCollectionBGColor;
                            deleteBtn.MouseUpEventHandler += collectionEvent;
                            deviceRowLayout.AddRightView(deleteBtn);
                        }
                        else if (Room.CurrentRoom.IsSharedRoom)
                        {
                            //不处理
                        }
                        else
                        {
                            deleteBtn.MouseUpEventHandler += delEvent;
                            deviceRowLayout.AddRightView(deleteBtn);
                        }
                        EventHandler<MouseEventArgs> dimmableLightHandler = (sender, e) =>
                        {
                            var dimmableLightControl = new Phone.Device.Light.DimmableLightControl();
                            UserView.HomePage.Instance.AddChidren(dimmableLightControl);
                            UserView.HomePage.Instance.PageIndex += 1;
                            UserView.HomePage.Instance.ScrollEnabled = false;
                            dimmableLightControl.action = RefreshBodyView;
                            dimmableLightControl.Show(device, Room.CurrentRoom);
                        };
                        //deviceItemFL.MouseLongEventHandler += dimmableLightHandler;
                        deviceItemFL.MouseUpEventHandler += dimmableLightHandler;
                        deviceName.MouseUpEventHandler += dimmableLightHandler;
                        deviceIMG.MouseUpEventHandler += dimmableLightHandler;
                        //collectionBtn.MouseUpEventHandler += (sender, e) =>
                        //{
                        //    if (collectionBtn.IsSelected)
                        //    {
                        //        Room.Lists[0].DeleteDevice(device.FilePath);
                        //        collectionBtn.IsSelected = false;
                        //        if(Room.CurrentRoom==Room.Lists[0])
                        //        {
                        //            RefreshBodyView();
                        //        }
                        //    }
                        //    else
                        //    {
                        //        Room.Lists[0].AddDevice(device.FilePath);
                        //        collectionBtn.IsSelected = true;
                        //    }
                        //    //RefreshBodyView();
                        //};
                        collectionBtn.MouseUpEventHandler += collectionEvent;
                        //var dev = Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FilePath);
                        //if (dev == null)
                        //{
                        //    collectionBtn.IsSelected = false;
                        //}
                        //else
                        //{
                        //    collectionBtn.IsSelected = true;
                        //}
                    }
                    else if (device.CommonDevice.Type == DeviceType.OnOffSwitch)
                    {
                        //按键
                        var panel = (Panel)device.CommonDevice;
                    }
                }
            }
            else
            {
                ShowNoGatewayTip();
            }
        }
        #endregion
@@ -2486,97 +2702,95 @@
        /// </summary>
        private void ShowScene()
        {
            if (CanBindGateway() == false)
            //选择场景
            var sceneList = Room.CurrentRoom.SceneUIList;
            if (sceneList == null)
            {
                //选择场景
                var sceneList = Room.CurrentRoom.SceneUIList;
                if (sceneList == null)
                return;
            }
            if (sceneList.Count == 0)
            {
                ShowNoSceneTip();
            }
            else
            {
                var sceneScrolView = new VerticalScrolViewLayout { };
                functionSceneBodyView.AddChidren(sceneScrolView);
                foreach (var scene in sceneList)
                {
                    return;
                }
                if (sceneList.Count == 0)
                {
                    ShowNoSceneTip();
                }
                else
                {
                    var sceneScrolView = new VerticalScrolViewLayout { };
                    functionSceneBodyView.AddChidren(sceneScrolView);
                    foreach (var scene in sceneList)
                    if (scene == null)
                    {
                        if (scene == null)
                        {
                            continue;
                        }
                        var sceneFL = new FrameLayout()
                        {
                            Height = Application.GetRealHeight(400),
                            BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                            Tag = scene
                        };
                        sceneScrolView.AddChidren(sceneFL);
                        var sceneRowLayout = new RowLayout()
                        {
                            Y = Application.GetRealHeight(30),
                            Height = Application.GetRealHeight(400 - 10 - 30),
                            LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                            Radius = CommonPage.BigFormRadius
                        };
                        sceneFL.AddChidren(sceneRowLayout);
                        var sceneItemFL = new FrameLayout()
                        {
                            BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                            Radius = CommonPage.BigFormRadius
                        };
                        sceneRowLayout.AddChidren(sceneItemFL);
                        var sceneImg = new Button()
                        {
                            UnSelectedImagePath = scene.IconPath,
                            Radius = CommonPage.BigFormRadius
                        };
                        sceneItemFL.AddChidren(sceneImg);
                        var hardBlackBG = new Button()
                        {
                            BackgroundColor = ZigbeeColor.Current.GXCBlack70Color,
                            SelectedBackgroundColor = ZigbeeColor.Current.GXCBlack80Color,
                            Radius = CommonPage.BigFormRadius
                        };
                        sceneItemFL.AddChidren(hardBlackBG);
                        var sceneNameBtn = new Button()
                        {
                            Text = scene.Name,
                            TextColor = ZigbeeColor.Current.GXCTextWhiteColor,
                            TextSize = 20
                        };
                        sceneItemFL.AddChidren(sceneNameBtn);
                        //编辑
                        var editBtn = new Device.CommonForm.RowLayoutEditButton
                        {
                            TextID = R.MyInternationalizationString.Edit,
                            Tag = scene
                        };
                        //删除
                        var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                        {
                            Tag = scene
                        };
                        if (!Room.CurrentRoom.IsSharedRoom)
                        {
                            sceneRowLayout.AddRightView(editBtn);
                            sceneRowLayout.AddRightView(deleteBtn);
                        }
                        continue;
                    }
                    var sceneFL = new FrameLayout()
                    {
                        Height = Application.GetRealHeight(400),
                        BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                        Tag = scene
                    };
                    sceneScrolView.AddChidren(sceneFL);
                    var sceneRowLayout = new RowLayout()
                    {
                        Y = Application.GetRealHeight(30),
                        Height = Application.GetRealHeight(400 - 10 - 30),
                        LineColor = ZigbeeColor.Current.GXCBackgroundColor,
                        Radius = CommonPage.BigFormRadius
                    };
                    sceneFL.AddChidren(sceneRowLayout);
                    var sceneItemFL = new FrameLayout()
                    {
                        BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
                        Radius = CommonPage.BigFormRadius
                    };
                    sceneRowLayout.AddChidren(sceneItemFL);
                    var sceneImg = new Button()
                    {
                        UnSelectedImagePath = scene.IconPath,
                        Radius = CommonPage.BigFormRadius
                    };
                    sceneItemFL.AddChidren(sceneImg);
                    var hardBlackBG = new Button()
                    {
                        BackgroundColor = ZigbeeColor.Current.GXCBlack70Color,
                        SelectedBackgroundColor = ZigbeeColor.Current.GXCBlack80Color,
                        Radius = CommonPage.BigFormRadius
                    };
                    sceneItemFL.AddChidren(hardBlackBG);
                    var sceneNameBtn = new Button()
                    {
                        Text = scene.Name,
                        TextColor = ZigbeeColor.Current.GXCTextWhiteColor,
                        TextSize = 20
                    };
                    sceneItemFL.AddChidren(sceneNameBtn);
                    //编辑
                    var editBtn = new Device.CommonForm.RowLayoutEditButton
                    {
                        TextID = R.MyInternationalizationString.Edit,
                        Tag = scene
                    };
                    //删除
                    var deleteBtn = new Device.CommonForm.RowLayoutDeleteButton
                    {
                        Tag = scene
                    };
                    if (!Room.CurrentRoom.IsSharedRoom)
                    {
                        sceneRowLayout.AddRightView(editBtn);
                        sceneRowLayout.AddRightView(deleteBtn);
                    }
                        EventHandler<MouseEventArgs> sceneDownHandler = (sender, e) =>
                        {
                            hardBlackBG.IsSelected = true;
                        };
                        sceneNameBtn.MouseDownEventHandler += sceneDownHandler;
                        hardBlackBG.MouseDownEventHandler += sceneDownHandler;
                    EventHandler<MouseEventArgs> sceneDownHandler = (sender, e) =>
                    {
                        hardBlackBG.IsSelected = true;
                    };
                    sceneNameBtn.MouseDownEventHandler += sceneDownHandler;
                    hardBlackBG.MouseDownEventHandler += sceneDownHandler;
                        //调用场景
                        EventHandler<MouseEventArgs> sceneUpHandler = async (sender, e) =>
                        {
                            hardBlackBG.IsSelected = false;
                    //调用场景
                    EventHandler<MouseEventArgs> sceneUpHandler = async (sender, e) =>
                    {
                        hardBlackBG.IsSelected = false;
                            //1成功 0失败
                            //后面补上相关提示
                            // Error参数含义
@@ -2586,74 +2800,70 @@
                            //<para>4:其他错误</para>
                            //<para>5:数据传输错误(在某次客户端向网关发送数据的过程中,网关在合理时间范围内接收客户端数据不完整导致该错误发生。如客户端向网关一次发送100个字节的数据,但网关等待接收了一秒只接收了80个字节。发生该错误,网关将主动关闭客户端连接)</para>
                            var sceneOpenAllData = await ZigBee.Device.Scene.ControlSceneAsync(scene.Id, 0);
                            if (sceneOpenAllData == null || sceneOpenAllData.sceneOpenData == null)
                        if (sceneOpenAllData == null || sceneOpenAllData.sceneOpenData == null)
                        {
                            return;
                        }
                        if (sceneOpenAllData.sceneOpenData.Result == 0)
                        {
                            if (sceneOpenAllData.errorResponData == null)
                            {
                                return;
                            }
                            if (sceneOpenAllData.sceneOpenData.Result == 0)
                            CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.ControlSceneFail);
                        }
                    };
                    sceneNameBtn.MouseUpEventHandler += sceneUpHandler;
                    hardBlackBG.MouseUpEventHandler += sceneUpHandler;
                    //编辑场景
                    EventHandler<MouseEventArgs> editEvent = (sender, e) =>
                    {
                        SceneRoomUI.EditScene(scene, Room.CurrentRoom);
                    };
                    editBtn.MouseUpEventHandler += editEvent;
                    //删除场景
                    EventHandler<MouseEventArgs> delEvent = (sender, e) =>
                    {
                        var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.ConfirmDelete), Language.StringByID(R.MyInternationalizationString.Cancel), Language.StringByID(R.MyInternationalizationString.Confrim));
                        alert.Show();
                        alert.ResultEventHandler += async (send1, e1) =>
                        {
                            if (e1)
                            {
                                if (sceneOpenAllData.errorResponData == null)
                                    //0 移除失败 1 移除成功 2 没有该场景
                                    var removeSceneAllData = await ZigBee.Device.Scene.DeleteSceneAsync(scene.Id);
                                if (removeSceneAllData == null || removeSceneAllData.removeSceneData == null)
                                {
                                    return;
                                }
                                CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.ControlSceneFail);
                            }
                        };
                        sceneNameBtn.MouseUpEventHandler += sceneUpHandler;
                        hardBlackBG.MouseUpEventHandler += sceneUpHandler;
                        //编辑场景
                        EventHandler<MouseEventArgs> editEvent = (sender, e) =>
                        {
                            SceneRoomUI.EditScene(scene, Room.CurrentRoom);
                        };
                        editBtn.MouseUpEventHandler += editEvent;
                        //删除场景
                        EventHandler<MouseEventArgs> delEvent = (sender, e) =>
                        {
                            var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.ConfirmDelete), Language.StringByID(R.MyInternationalizationString.Cancel), Language.StringByID(R.MyInternationalizationString.Confrim));
                            alert.Show();
                            alert.ResultEventHandler += async (send1, e1) =>
                            {
                                if (e1)
                                if (removeSceneAllData.removeSceneData.Result == 1)
                                {
                                    //0 移除失败 1 移除成功 2 没有该场景
                                    var removeSceneAllData = await ZigBee.Device.Scene.DeleteSceneAsync(scene.Id);
                                    if (removeSceneAllData == null || removeSceneAllData.removeSceneData == null)
                                    {
                                        return;
                                    }
                                    if (removeSceneAllData.removeSceneData.Result == 1)
                                    {
                                        //1成功
                                        Room.CurrentRoom.RemoveScene(scene);
                                        //RefreshBodyView();
                                        sceneScrolView.RemoveViewByTag((sender as Button).Tag);
                                    }
                                    else if (removeSceneAllData.removeSceneData.Result == 0)
                                    {
                                }
                                else if (removeSceneAllData.removeSceneData.Result == 0)
                                {
                                        //0 移除失败
                                        CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.DeleteSceneFail);
                                    }
                                    else if (removeSceneAllData.removeSceneData.Result == 2)
                                    {
                                }
                                else if (removeSceneAllData.removeSceneData.Result == 2)
                                {
                                        //2 没有该场景
                                        Room.CurrentRoom.RemoveScene(scene);
                                        //RefreshBodyView();
                                        sceneScrolView.RemoveViewByTag((sender as Button).Tag);
                                    }
                                }
                            };
                            }
                        };
                        deleteBtn.MouseUpEventHandler += delEvent;
                    }
                    };
                    deleteBtn.MouseUpEventHandler += delEvent;
                }
            }
            else
            {
                ShowNoGatewayTip();
            }
        }
        #endregion
@@ -2671,6 +2881,7 @@
                new System.Threading.Thread(async () =>
                 {
                     Config.Instance.HomeId = home.Id;
                     Config.Instance.Home = House.GetHouseByFilePath(home.FileName);
                     Global.CreateHomeDirectory(home.Id);
                     Config.Instance.Save();
                     //刷新个人中心的内存及线程