From 944b87b6bcccb095cd73f13f4410fb20faf48f74 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期三, 25 十二月 2019 11:21:06 +0800
Subject: [PATCH] 2019.12.25

---
 ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs |  978 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 884 insertions(+), 94 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs b/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs
index 9763cd1..4b8facc 100644
--- a/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs
@@ -36,7 +36,7 @@
         /// </summary>
         private string ImagePath="SceneIcon/1.png";
         /// <summary>
-        /// 鍥剧墖鏉ユ簮 0--鏈湴鍥惧簱 1--鎷嶇収 2--绯荤粺鍥惧簱 
+        /// 鍥剧墖鏉ユ簮 0--鏈湴鍥惧簱 1--鎷嶇収 2--绯荤粺鍥惧簱
         /// </summary>
         public int IconPathType = 0;
         /// <summary>
@@ -59,7 +59,7 @@
         /// <summary>
         /// backGround
         /// </summary>
-        private Button backGround;
+        private ImageView backGround;
 
         /// <summary>
         /// 鏄惁淇敼
@@ -77,6 +77,21 @@
         /// modifyRoom
         /// </summary>
         public Common.Room modifyRoom;
+
+        /// <summary>
+        /// OldBackgroundImagePath
+        /// </summary>
+        private string OldBackgroundImagePath;
+        /// <summary>
+        /// OldIconPathType
+        /// </summary>
+        public int OldIconPathType;
+
+        /// <summary>
+        /// selectedTimeAction
+        /// </summary>
+        public Action<SceneTargetDeviceUI> selectedAction;
+
 
 
         #endregion
@@ -151,7 +166,7 @@
                         targetRow.SetNameText(devNameText);
                         targetRow.SetZoneText(targetDevice.SceneUI.GetZone());
                     }
-                    
+
                     var editBtn = new Button()
                     {
                         BackgroundColor = ZigbeeColor.Current.GXCEditBackGroundColor,
@@ -178,7 +193,6 @@
                     //璁惧璇︾粏璁剧疆鐣岄潰
                     void detailMouseUpEventHandler(object sender, MouseEventArgs e)
                     {
-                        //璁惧
                         if (targetDevice.Type == 0)
                         {
                             if (targetDevice.DeviceUI == null || targetDevice.DeviceUI.CommonDevice == null)
@@ -186,13 +200,8 @@
                                 return;
                             }
 
-                            var deviceView = new SelectDevice();
-                            UserView.HomePage.Instance.AddChidren(deviceView);
-                            UserView.HomePage.Instance.PageIndex += 1;
-                            deviceView.sceneTargetDevice = targetDevice;
-                            deviceView.deviceUI = targetDevice.DeviceUI;
-                            deviceView.Show();
-                            deviceView.selectedAction = (selectedDevice) =>
+                            ShowSelectAction(targetDevice.DeviceUI, targetDevice);
+                            selectedAction = (selectedDevice) =>
                             {
                                 var targetDeviceUI = sceneTargetDevicesList.Find((obj) => obj.SceneTargetDeviceUIID == selectedDevice.SceneTargetDeviceUIID);
                                 if (targetDeviceUI != null)
@@ -204,7 +213,6 @@
                             };
 
                         }
-                        //鏃堕棿闂撮殧
                         else if (targetDevice.Type == 2)
                         {
                             var delayTimeView = new SelectDelayTime();
@@ -223,7 +231,6 @@
                                 RefreshTargetListView();
                             };
                         }
-                        //鍦烘櫙
                         else if (targetDevice.Type == 1)
                         {
                             var sceneView = new SelectScene();
@@ -231,6 +238,7 @@
                             UserView.HomePage.Instance.PageIndex += 1;
                             sceneView.sceneTargetDevice = targetDevice;
                             sceneView.sceneUI = targetDevice.SceneUI;
+                            sceneView.currentSceneUI = modifySceneUI;
                             sceneView.Show();
                             sceneView.selectedAction = (selectedScene) =>
                             {
@@ -245,8 +253,17 @@
                             };
                         }
                     }
+                }
 
-                    
+                if (sceneTargetDevicesList.Count > 2)
+                {
+                    var targetRowLayout = new RowLayout()
+                    {
+                        Height = Application.GetRealHeight(300),
+                        LineColor = ZigbeeColor.Current.GXCBackgroundColor,
+                        BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
+                    };
+                    TargetListScrolView.AddChidren(targetRowLayout);
                 }
             }
         }
@@ -270,16 +287,7 @@
         /// </summary>
         private void Init()
         {
-            //foreach (var floor in Config.Instance.Home.FloorDics)
-            //{
-            //    floorIds.Add(floor.Key);
-            //    floorNames.Add(floor.Value);
-            //    if(Common.Room.CurrentRoom.GetRoomsByFloorId(floor.Key).Count>0)
-            //    {
-            //        roomNames.Add(Common.Room.CurrentRoom.GetRoomNamesByFloorId(floor.Key));
-            //        rooms.Add(Common.Room.CurrentRoom.GetRoomsByFloorId(floor.Key));
-            //    }
-            //}
+
         }
 
         /// <summary>
@@ -324,14 +332,13 @@
             };
             bodyFrameLayout.AddChidren(imgFL);
 
-            backGround = new Button()
+            backGround = new ImageView()
             {
                 Width = Application.GetMinRealAverage(930),
                 Height = Application.GetMinRealAverage(464),
                 Gravity = Gravity.Center,
                 Radius = (uint)Application.GetMinRealAverage(CommonFormResouce.BigFormRadius),
-                //UnSelectedImagePath = ImagePath
-                UnSelectedImagePath = "SceneIcon/3.jpg"
+                ImagePath = "SceneIcon/3.jpg"
             };
             imgFL.AddChidren(backGround);
             backGround.SetViewShadow(true);
@@ -352,7 +359,8 @@
                 TextID = R.MyInternationalizationString.EditInfo,
                 TextColor = ZigbeeColor.Current.GXCTextDeepBlackColor,
                 TextAlignment = TextAlignment.CenterLeft,
-                TextSize = 14
+                TextSize = 15,
+                IsBold=true
             };
             infoFL.AddChidren(infoEdit);
 
@@ -399,7 +407,8 @@
                 TextAlignment = TextAlignment.CenterLeft,
                 TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                 TextID = R.MyInternationalizationString.AddScentTargetAction,
-                Gravity = Gravity.CenterVertical
+                Gravity = Gravity.CenterVertical,
+                TextSize=15
             };
             addTargetFL.AddChidren(target);
 
@@ -421,24 +430,41 @@
             };
             addTargetFL.AddChidren(targetLine);
 
-            //娣诲姞鐩爣鍚庣殑灞曠ず鍒楄〃
             TargetListScrolView = new VerticalScrolViewLayout()
             {
                 Y = Application.GetRealHeight(49+127),
                 Height = Application.GetRealHeight(730-127-49),
-                //BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
             };
             targetFL.AddChidren(TargetListScrolView);
 
             confirmBtn = new CommonForm.CompleteButton(1656, 907, 127);
             AddChidren(confirmBtn);
 
-            if(isModify)
+            if (isModify)
             {
-                backGround.UnSelectedImagePath = modifySceneUI.IconPath;
-                nameRow.SetTitle(modifySceneUI.Name);
-                zoneRow.SetTitle($"{Config.Instance.Home.GetFloorNameById(modifyRoom.FloorId)},{modifyRoom.Name}");
                 IconPathType = modifySceneUI.IconPathType;
+                OldIconPathType = modifySceneUI.IconPathType;
+                if (IconPathType != 0)
+                {
+                    OldBackgroundImagePath = modifySceneUI.IconPath;
+                }
+                if (modifySceneUI.IconPathType == 0)
+                {
+                    backGround.ImagePath = modifySceneUI.IconPath;
+                }
+                else
+                {
+                    backGround.ImagePath = System.IO.Path.Combine(Config.Instance.FullPath, modifySceneUI.IconPath);
+                }
+                nameRow.SetTitle(modifySceneUI.Name);
+                if (Config.Instance.Home.FloorDics.Count == 0)
+                {
+                    zoneRow.SetTitle($"{modifyRoom.Name}");
+                }
+                else
+                {
+                    zoneRow.SetTitle($"{Config.Instance.Home.GetFloorNameById(modifyRoom.FloorId)},{modifyRoom.Name}");
+                }
                 curRoom = modifyRoom;
                 sceneTargetDevicesList.AddRange(modifySceneTargetDevicesList);
             }
@@ -447,7 +473,6 @@
 
             #region event
 
-            //閫夋嫨鑳屾櫙鍥�
             EventHandler<MouseEventArgs> backGroundIMGHander = (sender, e) =>
             {
                 if (curRoom != null && curRoom.IsSharedRoom)
@@ -470,24 +495,25 @@
                     Height = Application.GetRealHeight(450),
                     Width = Application.GetRealWidth(selectRow_Width),
                     Gravity = Gravity.CenterHorizontal,
-                    Radius = (uint)Application.GetRealHeight(17),
+                    Radius = (uint)Application.GetRealHeight(35),
                     BackgroundColor = ZigbeeColor.Current.GXCTextWhiteColor
                 };
                 selectFL.AddChidren(itemFL);
-                itemFL.Animate = Animate.DownToUp;
+                //itemFL.Animate = Animate.DownToUp;
 
                 var selectLocalPicture = new Button()
                 {
                     Height = Application.GetRealHeight(selectRow_Height) - 1,
                     TextID = R.MyInternationalizationString.LocalPicture,
-                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4
+                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4,
+                    TextSize=17
                 };
                 itemFL.AddChidren(selectLocalPicture);
                 var selectLocalLine = new Button()
                 {
                     Y = selectLocalPicture.Bottom,
                     Height = 1,
-                    BackgroundColor = ZigbeeColor.Current.GXCLineColor
+                    BackgroundColor = ZigbeeColor.Current.GXCGrayLineColor2
                 };
                 itemFL.AddChidren(selectLocalLine);
 
@@ -496,14 +522,15 @@
                     Y = selectLocalLine.Bottom,
                     Height = Application.GetRealHeight(selectRow_Height) - 1,
                     TextID = R.MyInternationalizationString.Photograph,
-                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4
+                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4,
+                    TextSize=17
                 };
                 itemFL.AddChidren(selectPhotographBtn);
                 var selectPhotographLine = new Button()
                 {
                     Y = selectPhotographBtn.Bottom,
                     Height = 1,
-                    BackgroundColor = ZigbeeColor.Current.GXCLineColor,
+                    BackgroundColor = ZigbeeColor.Current.GXCGrayLineColor2,
                 };
                 itemFL.AddChidren(selectPhotographLine);
 
@@ -512,7 +539,8 @@
                     Y = selectPhotographLine.Bottom,
                     Height = Application.GetRealHeight(selectRow_Height) - 1,
                     TextID = R.MyInternationalizationString.MyAblums,
-                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4
+                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4,
+                    TextSize=17
                 };
                 itemFL.AddChidren(selectAblumsBtn);
 
@@ -525,7 +553,8 @@
                     TextID = R.MyInternationalizationString.Cancel,
                     TextColor = ZigbeeColor.Current.GXCTextSelectedColor4,
                     BackgroundColor = ZigbeeColor.Current.GXCTextWhiteColor,
-                    Radius = (uint)Application.GetRealHeight(17)
+                    Radius = (uint)Application.GetRealHeight(35),
+                    TextSize=17
                 };
                 selectFL.AddChidren(cancelBtn);
 
@@ -540,14 +569,14 @@
                     {
                         IconPathType = 0;
                         backGround.ImageBytes = null;
-                        backGround.UnSelectedImagePath = imgPath;
+                        backGround.ImagePath = imgPath;
                     };
                 };
                 selectPhotographBtn.MouseUpEventHandler += (send, ee) =>
                 {
                     selectFL.RemoveFromParent();
                     var tradeTime = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo);
-                    var fileName = $"Scene_{tradeTime}";
+                    var fileName = $"SceneIcon_{tradeTime}";
                     //閫氳繃鐩告満鎷嶇収瑁佸壀
                     CropImage.TakePicture((imagePath) =>
                     {
@@ -555,23 +584,23 @@
                         {
                             if (IconPathType != 0)
                             {
-                                Global.DeleteFilebyHomeId(backGround.UnSelectedImagePath);
+                                Global.DeleteFilebyHomeId(backGround.ImagePath);
                             }
                         }
 
                         IconPathType = 1;
                         backGround.ImageBytes = Shared.IO.FileUtils.ReadFile(imagePath);
-                        backGround.UnSelectedImagePath = imagePath;
+                        backGround.ImagePath = imagePath;
                         System.IO.File.Delete(imagePath);
-                        
+
                     }, fileName, 2, 1);
                 };
-               
+
                 selectAblumsBtn.MouseUpEventHandler += (send, ee) =>
                 {
                     selectFL.RemoveFromParent();
                     var tradeTime = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo);
-                    var fileName = $"Scene_{tradeTime}";
+                    var fileName = $"SceneIcon_{tradeTime}";
                     //浠庣浉鍐岄�夋嫨鍥剧墖瑁佸壀
                     CropImage.SelectPicture((imagePath) =>
                     {
@@ -579,13 +608,13 @@
                         {
                             if (IconPathType != 0)
                             {
-                                Global.DeleteFilebyHomeId(backGround.UnSelectedImagePath);
+                                Global.DeleteFilebyHomeId(backGround.ImagePath);
                             }
                         }
 
                         IconPathType = 2;
                         backGround.ImageBytes = Shared.IO.FileUtils.ReadFile(imagePath);
-                        backGround.UnSelectedImagePath = imagePath;
+                        backGround.ImagePath = imagePath;
                         System.IO.File.Delete(imagePath);
 
                     }, fileName, 2,1);
@@ -615,10 +644,11 @@
                 {
                     foreach (var floor in Config.Instance.Home.FloorDics)
                     {
-                        floorIds.Add(floor.Key);
-                        floorNames.Add(floor.Value);
                         if (Common.Room.CurrentRoom.GetRoomsByFloorId(floor.Key).Count > 0)
                         {
+                            floorIds.Add(floor.Key);
+                            floorNames.Add(floor.Value);
+
                             roomNames.Add(Common.Room.CurrentRoom.GetRoomNamesByFloorId(floor.Key));
                             rooms.Add(Common.Room.CurrentRoom.GetRoomsByFloorId(floor.Key));
                         }
@@ -627,7 +657,7 @@
                     {
                         curRoom = rooms[index1][index2];
                         zoneRow.SetTitle($"{Config.Instance.Home.GetFloorNameById(floorIds[index1])} , {rooms[index1][index2].Name}");
-                    }, 0, 0, Language.StringByID(R.MyInternationalizationString.BelongFloor),
+                    }, 0, 0, Language.StringByID(R.MyInternationalizationString.BelongZone),
                    Language.StringByID(R.MyInternationalizationString.Confrim),
                    Language.StringByID(R.MyInternationalizationString.Cancel));
                 }
@@ -647,7 +677,7 @@
                     {
                         curRoom = rs[index1];
                         zoneRow.SetTitle(rs[index1].Name);
-                    }, 0, Language.StringByID(R.MyInternationalizationString.BelongFloor),
+                    }, 0, Language.StringByID(R.MyInternationalizationString.BelongZone),
                    Language.StringByID(R.MyInternationalizationString.Confrim),
                    Language.StringByID(R.MyInternationalizationString.Cancel));
                 }
@@ -658,15 +688,18 @@
             EventHandler<MouseEventArgs> targetAddHander = (sender, e) =>
             {
 
-                if (curRoom == null)
+                //if (curRoom == null)
+                //{
+                //    RoomCommon.ShowTipNoRoom();
+                //    return;
+                //}
+                if(curRoom != null)
                 {
-                    RoomCommon.ShowTipNoRoom();
-                    return;
-                }
-                if (curRoom.IsSharedRoom)
-                {
-                    RoomCommon.ShowTipRoomIsShared();
-                    return;
+                    if (curRoom.IsSharedRoom)
+                    {
+                        RoomCommon.ShowTipRoomIsShared();
+                        return;
+                    }
                 }
 
                 int selectRow_Height = 150;
@@ -683,24 +716,25 @@
                     Height = Application.GetRealHeight(450),
                     Width = Application.GetRealWidth(selectRow_Width),
                     Gravity=Gravity.CenterHorizontal,
-                    Radius = (uint)Application.GetRealHeight(17),
+                    Radius = (uint)Application.GetRealHeight(35),
                     BackgroundColor = ZigbeeColor.Current.GXCTextWhiteColor
                 };
                 selectFL.AddChidren(itemFL);
-                itemFL.Animate = Animate.DownToUp;
+                //itemFL.Animate = Animate.DownToUp;
 
                 var selectedFunctionBtn = new Button()
                 {
                     Height = Application.GetRealHeight(selectRow_Height) - 1,
                     TextID = R.MyInternationalizationString.Function,
-                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4
+                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4,
+                    TextSize=17
                 };
                 itemFL.AddChidren(selectedFunctionBtn);
                 var selectedFunctionLine = new Button()
                 {
                     Y = selectedFunctionBtn.Bottom,
                     Height = 1,
-                    BackgroundColor = ZigbeeColor.Current.GXCLineColor
+                    BackgroundColor = ZigbeeColor.Current.GXCGrayLineColor2
                 };
                 itemFL.AddChidren(selectedFunctionLine);
 
@@ -709,14 +743,15 @@
                     Y = selectedFunctionLine.Bottom,
                     Height = Application.GetRealHeight(selectRow_Height) - 1,
                     TextID = R.MyInternationalizationString.Scence,
-                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4
+                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4,
+                    TextSize=17
                 };
                 itemFL.AddChidren(selectedSceneBtn);
                 var selectedSceneLine = new Button()
                 {
                     Y = selectedSceneBtn.Bottom,
                     Height = 1,
-                    BackgroundColor = ZigbeeColor.Current.GXCLineColor,
+                    BackgroundColor = ZigbeeColor.Current.GXCGrayLineColor2,
                 };
                 itemFL.AddChidren(selectedSceneLine);
 
@@ -725,7 +760,8 @@
                     Y = selectedSceneLine.Bottom,
                     Height = Application.GetRealHeight(selectRow_Height) - 1,
                     TextID = R.MyInternationalizationString.Delay,
-                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4
+                    TextColor = ZigbeeColor.Current.GXCTextSelectedColor4,
+                    TextSize=17
                 };
                 itemFL.AddChidren(selectedTimerBtn);
 
@@ -739,7 +775,8 @@
                     TextID = R.MyInternationalizationString.Cancel,
                     TextColor = ZigbeeColor.Current.GXCTextSelectedColor4,
                     BackgroundColor = ZigbeeColor.Current.GXCTextWhiteColor,
-                    Radius = (uint)Application.GetRealHeight(17)
+                    Radius = (uint)Application.GetRealHeight(35),
+                    TextSize=17
                 };
                 selectFL.AddChidren(cancelBtn);
 
@@ -766,13 +803,14 @@
                     UserView.HomePage.Instance.AddChidren(sceneView);
                     UserView.HomePage.Instance.PageIndex += 1;
                     sceneView.beforeSceneTargetDeviceUIs = sceneTargetDevicesList;
+                    sceneView.currentSceneUI = modifySceneUI;
                     sceneView.Show();
                     sceneView.selectedAction = (selectedScene) =>
                     {
                         sceneTargetDevicesList.Add(selectedScene);
                         RefreshTargetListView();
                     };
-                    
+
                 };
                 //娣诲姞鏃堕棿闂撮殧
                 selectedTimerBtn.MouseUpEventHandler += (send, ee) =>
@@ -832,44 +870,42 @@
                         try
                         {
                             var tradeTime = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo);
-                            var fileName = $"Scene_{tradeTime}";
-                            //鏀瑰悕
+                            var fileName = $"SceneIcon_{tradeTime}";
                             if (modifySceneUI.Name != nameRow.NameText.Text.Trim())
                             {
                                 if (Common.Room.CurrentRoom.GetSameFloorScenes(curRoom.FloorId).Find(s => s.Name == nameRow.NameText.Text.Trim()) != null)
                                 {
-                                    Common.CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneHadExist);
+                                    CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.TheSceneHadExist));
                                     return;
                                 }
-                                //淇敼鍚嶅瓧
                                 var r = await ZigBee.Device.Scene.RenameSceneAsync(modifySceneUI.Id, nameRow.NameText.Text.Trim());
                                 var reName = r.sceneRenameResponseData.Result;
                                 if (reName == 0)
                                 {
-                                    //澶辫触
                                     return;
                                 }
                                 else if (reName == 1)
                                 {
-                                    //鎴愬姛
                                     modifySceneUI.Name = nameRow.NameText.Text.Trim();
 
                                 }
                                 else if (reName == 2)
                                 {
-                                    //娌℃湁璇ュ満鏅�
                                     return;
                                 }
                             }
-                            //鍥剧墖
-                            if(IconPathType==1 || IconPathType ==2)
+                            if (OldIconPathType != 0)
+                            {
+                                Shared.IO.FileUtils.DeleteFile(System.IO.Path.Combine(Config.Instance.FullPath, OldBackgroundImagePath));
+                            }
+                            if (IconPathType == 1 || IconPathType == 2)
                             {
                                 Shared.IO.FileUtils.WriteFileByBytes(System.IO.Path.Combine(Config.Instance.FullPath, fileName), backGround.ImageBytes);
-                                modifySceneUI.IconPath = System.IO.Path.Combine(Config.Instance.FullPath, fileName);
+                                modifySceneUI.IconPath = fileName;
                             }
                             else
                             {
-                                modifySceneUI.IconPath = backGround.UnSelectedImagePath;
+                                modifySceneUI.IconPath = backGround.ImagePath;
                             }
                             modifySceneUI.IconPathType = IconPathType;
 
@@ -970,7 +1006,6 @@
                             {
                                 if (modifyRoom != curRoom)
                                 {
-                                   
                                     modifyRoom.SceneUIList.Remove(modifySceneUI);
                                     modifyRoom.SceneUIFilePathList.Remove(modifySceneUI.FileName);
                                     curRoom.SceneUIList.Add(modifySceneUI);
@@ -982,12 +1017,10 @@
                             }
                             else if (result == 0)
                             {
-                                //澶辫触
                                 Common.CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain);
                             }
                             else if (result == -1)
                             {
-                                //宸插瓨鍦�
                                 Common.CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneHadExist);
                             }
                         }
@@ -1020,15 +1053,14 @@
                             var tradeTime = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo);
                             var fileName = $"SceneIcon_{tradeTime}.png";
                             string imgPath;
-                            //鍥剧墖
                             if (IconPathType == 1 || IconPathType == 2)
                             {
                                 Shared.IO.FileUtils.WriteFileByBytes(System.IO.Path.Combine(Config.Instance.FullPath, fileName), backGround.ImageBytes);
-                                imgPath = System.IO.Path.Combine(Config.Instance.FullPath, fileName);
+                                imgPath = fileName;
                             }
                             else
                             {
-                                imgPath = backGround.UnSelectedImagePath;
+                                imgPath = backGround.ImagePath;
                             }
                             if (Common.Room.CurrentRoom.GetSameFloorScenes(curRoom.FloorId).Find(s => s.Name == nameRow.NameText.Text.Trim()) != null)
                             {
@@ -1091,12 +1123,10 @@
                             }
                             else if (result == 0)
                             {
-                                //澶辫触
                                 CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.AddSceneFail);
                             }
                             else if (result == -1)
                             {
-                                //宸插瓨鍦�
                                 CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneHadExist);
                             }
                         }
@@ -1112,11 +1142,771 @@
                     }
                 }
 
-                
             };
             #endregion
         }
 
         #endregion
+
+        #region 缂栬緫璁惧____________________________________
+
+        /// <summary>
+        /// ShowSelectAction
+        /// </summary>
+        /// <param name="device"></param>
+        private void ShowSelectAction(DeviceUI device, SceneTargetDeviceUI sceneTarget)
+        {
+            var dialog = new FrameLayout()
+            {
+                BackgroundColor = ZigbeeColor.Current.GXCDailogBackGroundColor
+            };
+            AddChidren(dialog);
+
+            dialog.MouseUpEventHandler += (sender, e) =>
+            {
+                dialog.RemoveFromParent();
+            };
+
+            if (device.CommonDevice.Type == ZigBee.Device.DeviceType.OnOffOutput)
+            {
+                SelectOnoffOutput(dialog, device, sceneTarget);
+            }
+            else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.AirSwitch)
+            {
+                SelectOnoffOutput(dialog, device, sceneTarget);
+            }
+            else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.DimmableLight)
+            {
+                SelectDimmableLight(dialog, device, sceneTarget);
+            }
+            else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.WindowCoveringDevice)
+            {
+                SelectWindowCoveringDevice(dialog, device, sceneTarget);
+            }
+            else if (device.CommonDevice.Type == ZigBee.Device.DeviceType.Thermostat)
+            {
+                SelectThermostat(dialog, device, sceneTarget);
+            }
+        }
+
+        /// <summary>
+        /// 鐏厜
+        /// </summary>
+        /// <param name="dialog"></param>
+        /// <param name="device"></param>
+        /// <param name="sceneTarget"></param>
+        private void SelectOnoffOutput(FrameLayout dialog, DeviceUI device, SceneTargetDeviceUI sceneTarget)
+        {
+            var selectFL = new FrameLayout
+            {
+                Y = Application.GetRealHeight(1391),
+                Height = Application.GetRealHeight(530),
+            };
+            dialog.AddChidren(selectFL);
+            //selectFL.Animate = Animate.DownToUp;
+
+            var titleBG = new FrameLayout
+            {
+                Height = Application.GetRealHeight(138 * 2),
+                Radius = (uint)Application.GetRealHeight(58),
+                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
+            };
+            selectFL.AddChidren(titleBG);
+
+            var titleFL = new FrameLayout
+            {
+                Height = Application.GetRealHeight(138),
+            };
+            selectFL.AddChidren(titleFL);
+
+            var line = new Button
+            {
+                Y = titleFL.Height - 1,
+                Height = 1,
+                BackgroundColor = ZigbeeColor.Current.GXCGrayLineColor2
+            };
+            titleFL.AddChidren(line);
+
+            var cancleBtn = new Button
+            {
+                X = Application.GetRealWidth(80),
+                Width = Application.GetRealWidth(200),
+                TextColor = ZigbeeColor.Current.GXCTextGrayColor,
+                TextSize = 14,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextID = R.MyInternationalizationString.Cancel
+            };
+            titleFL.AddChidren(cancleBtn);
+
+            var deviceName = new Button
+            {
+                Width = Application.GetRealWidth(400),
+                Gravity = Gravity.CenterHorizontal,
+                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
+                TextSize = 16,
+                Text = device.CommonDevice.DeviceEpointName
+            };
+            titleFL.AddChidren(deviceName);
+
+            var comfrimBtn = new Button
+            {
+                X = Application.GetRealWidth(800),
+                Width = Application.GetRealWidth(200),
+                TextColor = ZigbeeColor.Current.GXCTextSelectedColor2,
+                TextSize = 14,
+                TextAlignment = TextAlignment.CenterRight,
+                TextID = R.MyInternationalizationString.Complete
+            };
+            titleFL.AddChidren(comfrimBtn);
+
+            var itemFL = new FrameLayout
+            {
+                Y = titleFL.Bottom,
+                Height = Application.GetRealHeight(392),
+                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
+            };
+            selectFL.AddChidren(itemFL);
+
+            var open = new SelectSceneStatuRow(0, 60);
+            itemFL.AddChidren(open);
+            open.Init();
+            open.SetTitle(R.MyInternationalizationString.Open);
+            open.IsSelected = true;
+
+
+            var shut = new SelectSceneStatuRow(0, 60 + 127 + 30);
+            itemFL.AddChidren(shut);
+            shut.Init();
+            shut.hideLine(true);
+            shut.SetTitle(R.MyInternationalizationString.Shut);
+
+            open.ClickButton.MouseUpEventHandler += (sender, e) =>
+            {
+                open.IsSelected = true;
+                shut.IsSelected = false;
+            };
+
+            shut.ClickButton.MouseUpEventHandler += (sender, e) =>
+            {
+                open.IsSelected = false;
+                shut.IsSelected = true;
+            };
+
+            cancleBtn.MouseUpEventHandler = (sender, e) =>
+            {
+                dialog.RemoveAll();
+                dialog.RemoveFromParent();
+            };
+
+            if (sceneTarget.TaskList.Count > 0)
+            {
+                if (sceneTarget.TaskList[0].Data1 == 1)
+                {
+                    open.IsSelected = true;
+                    shut.IsSelected = false;
+                }
+                else
+                {
+                    open.IsSelected = false;
+                    shut.IsSelected = true;
+                }
+            }
+
+            comfrimBtn.MouseUpEventHandler = (sender, e) =>
+            {
+                var taskList = new List<ZigBee.Device.Scene.TaskListInfo> { };
+                int taskType = 1;
+                int data1 = 0;
+                int data2 = 0;
+
+                if (open.IsSelected)
+                {
+                    //寮�
+                    data1 = 1;
+                    data2 = 0;
+                }
+                else
+                {
+                    //鍏�
+                    data1 = 0;
+                    data2 = 0;
+                }
+                var taskInfo = new ZigBee.Device.Scene.TaskListInfo
+                {
+                    TaskType = taskType,
+                    Data1 = data1,
+                    Data2 = data2
+                };
+                taskList.Add(taskInfo);
+
+                sceneTarget.TaskList = taskList;
+                sceneTarget.DeviceUI = device;
+                selectedAction?.Invoke(sceneTarget);
+                dialog.RemoveFromParent();
+            };
+        }
+        /// <summary>
+        /// 绐楀笜
+        /// </summary>
+        /// <param name="dialog"></param>
+        /// <param name="device"></param>
+        /// <param name="sceneTarget"></param>
+        private void SelectWindowCoveringDevice(FrameLayout dialog, DeviceUI device, SceneTargetDeviceUI sceneTarget)
+        {
+            var selectFL = new FrameLayout
+            {
+                Y = Application.GetRealHeight(1169),
+                Height = Application.GetRealHeight(752),
+            };
+            dialog.AddChidren(selectFL);
+            //selectFL.Animate = Animate.DownToUp;
+
+            var titleBG = new FrameLayout
+            {
+                Height = Application.GetRealHeight(138 * 2),
+                Radius = (uint)Application.GetRealHeight(58),
+                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
+            };
+            selectFL.AddChidren(titleBG);
+
+            var titleFL = new FrameLayout
+            {
+                Height = Application.GetRealHeight(138),
+            };
+            selectFL.AddChidren(titleFL);
+
+            var line = new Button
+            {
+                Y = titleFL.Height - 1,
+                Height = 1,
+                BackgroundColor = ZigbeeColor.Current.GXCGrayLineColor2
+            };
+            titleFL.AddChidren(line);
+
+            var cancleBtn = new Button
+            {
+                X = Application.GetRealWidth(80),
+                Width = Application.GetRealWidth(200),
+                TextColor = ZigbeeColor.Current.GXCTextGrayColor,
+                TextSize = 14,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextID = R.MyInternationalizationString.Cancel
+            };
+            titleFL.AddChidren(cancleBtn);
+
+            var deviceName = new Button
+            {
+                Width = Application.GetRealWidth(400),
+                Gravity = Gravity.CenterHorizontal,
+                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
+                TextSize = 16,
+                Text = device.CommonDevice.DeviceEpointName
+            };
+            titleFL.AddChidren(deviceName);
+
+            var comfrimBtn = new Button
+            {
+                X = Application.GetRealWidth(800),
+                Width = Application.GetRealWidth(200),
+                TextColor = ZigbeeColor.Current.GXCTextSelectedColor2,
+                TextSize = 14,
+                TextAlignment = TextAlignment.CenterRight,
+                TextID = R.MyInternationalizationString.Complete
+            };
+            titleFL.AddChidren(comfrimBtn);
+
+            var itemFL = new FrameLayout
+            {
+                Y = titleFL.Bottom,
+                Height = Application.GetRealHeight(613),
+                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
+            };
+            selectFL.AddChidren(itemFL);
+
+            var open = new SelectDeviceWithSeekBarRow(0, 60);
+            itemFL.AddChidren(open);
+            open.Init();
+            open.SetTitle(R.MyInternationalizationString.Open);
+            open.IsSelected = true;
+
+            var shut = new SelectSceneStatuRow(0, 60 + 348 + 30);
+            itemFL.AddChidren(shut);
+            shut.Init();
+            shut.hideLine(true);
+            shut.SetTitle(R.MyInternationalizationString.Shut);
+
+            open.ClickButton.MouseUpEventHandler += (sender, e) =>
+            {
+                open.IsSelected = true;
+                shut.IsSelected = false;
+            };
+
+            shut.ClickButton.MouseUpEventHandler += (sender, e) =>
+            {
+                open.IsSelected = false;
+                shut.IsSelected = true;
+            };
+
+            cancleBtn.MouseUpEventHandler = (sender, e) =>
+            {
+                dialog.RemoveAll();
+                dialog.RemoveFromParent();
+            };
+
+            open.SeekBar.ProgressChanged += (sender, e) =>
+            {
+                open.IsSelected = true;
+                shut.IsSelected = false;
+                open.SetSeekBarTitle();
+            };
+
+            if (sceneTarget.TaskList.Count > 0)
+            {
+                if (sceneTarget.TaskList[0].Data1 == 1)
+                {
+                    open.IsSelected = false;
+                    shut.IsSelected = true;
+                }
+                else
+                {
+                    open.IsSelected = true;
+                    shut.IsSelected = false;
+                    open.SetProgress(sceneTarget.TaskList[0].Data2);
+                }
+            }
+
+            comfrimBtn.MouseUpEventHandler = (sender, e) =>
+            {
+                var taskList = new List<ZigBee.Device.Scene.TaskListInfo> { };
+
+                int taskType = 6;
+                int data1 = 0;
+                int data2 = 0;
+
+                if (shut.IsSelected)
+                {
+                    //鍏�
+                    data1 = 1;
+                    data2 = 0;
+                }
+                else
+                {
+                    //鐧惧垎姣�
+                    data1 = 5;
+                    data2 = open.SeekBar.Progress;
+                }
+
+                var taskInfo = new ZigBee.Device.Scene.TaskListInfo
+                {
+                    TaskType = taskType,
+                    Data1 = data1,
+                    Data2 = data2
+                };
+                taskList.Add(taskInfo);
+
+                sceneTarget.TaskList = taskList;
+                sceneTarget.DeviceUI = device;
+                selectedAction?.Invoke(sceneTarget);
+                dialog.RemoveFromParent();
+            };
+        }
+        /// <summary>
+        /// 璋冨厜鐏�
+        /// </summary>
+        /// <param name="dialog"></param>
+        /// <param name="device"></param>
+        /// <param name="sceneTarget"></param>
+        private void SelectDimmableLight(FrameLayout dialog, DeviceUI device, SceneTargetDeviceUI sceneTarget)
+        {
+            var selectFL = new FrameLayout
+            {
+                Y = Application.GetRealHeight(1169),
+                Height = Application.GetRealHeight(752),
+            };
+            dialog.AddChidren(selectFL);
+            //selectFL.Animate = Animate.DownToUp;
+
+            var titleBG = new FrameLayout
+            {
+                Height = Application.GetRealHeight(138 * 2),
+                Radius = (uint)Application.GetRealHeight(58),
+                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
+            };
+            selectFL.AddChidren(titleBG);
+
+            var titleFL = new FrameLayout
+            {
+                Height = Application.GetRealHeight(138),
+            };
+            selectFL.AddChidren(titleFL);
+
+            var line = new Button
+            {
+                Y = titleFL.Height - 1,
+                Height = 1,
+                BackgroundColor = ZigbeeColor.Current.GXCGrayLineColor2
+            };
+            titleFL.AddChidren(line);
+
+            var cancleBtn = new Button
+            {
+                X = Application.GetRealWidth(80),
+                Width = Application.GetRealWidth(200),
+                TextColor = ZigbeeColor.Current.GXCTextGrayColor,
+                TextSize = 14,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextID = R.MyInternationalizationString.Cancel
+            };
+            titleFL.AddChidren(cancleBtn);
+
+            var deviceName = new Button
+            {
+                Width = Application.GetRealWidth(400),
+                Gravity = Gravity.CenterHorizontal,
+                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
+                TextSize = 16,
+                TextAlignment = TextAlignment.CenterLeft,
+                Text = device.CommonDevice.DeviceEpointName
+            };
+            titleFL.AddChidren(deviceName);
+
+            var comfrimBtn = new Button
+            {
+                X = Application.GetRealWidth(800),
+                Width = Application.GetRealWidth(200),
+                TextColor = ZigbeeColor.Current.GXCTextSelectedColor2,
+                TextSize = 14,
+                TextAlignment = TextAlignment.CenterRight,
+                TextID = R.MyInternationalizationString.Complete
+            };
+            titleFL.AddChidren(comfrimBtn);
+
+            var itemFL = new FrameLayout
+            {
+                Y = titleFL.Bottom,
+                Height = Application.GetRealHeight(613),
+                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
+            };
+            selectFL.AddChidren(itemFL);
+
+            var open = new SelectDeviceWithSeekBarRow(0, 60);
+            itemFL.AddChidren(open);
+            open.Init(254);
+            open.SetTitle(R.MyInternationalizationString.Open);
+            open.IsSelected = true;
+
+            var shut = new SelectSceneStatuRow(0, 60 + 348 + 30);
+            itemFL.AddChidren(shut);
+            shut.Init();
+            shut.hideLine(true);
+            shut.SetTitle(R.MyInternationalizationString.Shut);
+
+            open.ClickButton.MouseUpEventHandler += (sender, e) =>
+            {
+                open.IsSelected = true;
+                shut.IsSelected = false;
+            };
+
+            shut.ClickButton.MouseUpEventHandler += (sender, e) =>
+            {
+                open.IsSelected = false;
+                shut.IsSelected = true;
+            };
+
+            cancleBtn.MouseUpEventHandler = (sender, e) =>
+            {
+                dialog.RemoveAll();
+                dialog.RemoveFromParent();
+            };
+
+            open.SeekBar.ProgressChanged += (sender, e) =>
+            {
+                open.IsSelected = true;
+                shut.IsSelected = false;
+                open.SetSeekBarTitle();
+            };
+
+            if (sceneTarget.TaskList.Count > 0)
+            {
+                if (sceneTarget.TaskList[0].Data1 == 0)
+                {
+                    open.IsSelected = false;
+                    shut.IsSelected = true;
+                }
+                else
+                {
+                    open.IsSelected = true;
+                    shut.IsSelected = false;
+                    open.SetProgress(sceneTarget.TaskList[0].Data1);
+                }
+            }
+
+            comfrimBtn.MouseUpEventHandler = (sender, e) =>
+            {
+                var taskList = new List<ZigBee.Device.Scene.TaskListInfo> { };
+
+                int taskType = 3;
+                int data1 = 0;
+                int data2 = 0;
+
+                if (shut.IsSelected)
+                {
+                    //鍏�
+                    data1 = 0;
+                    data2 = 0;
+                }
+                else
+                {
+                    //鐧惧垎姣�
+                    data1 = open.SeekBar.Progress;
+                    data2 = 0;
+                }
+
+                var taskInfo = new ZigBee.Device.Scene.TaskListInfo
+                {
+                    TaskType = taskType,
+                    Data1 = data1,
+                    Data2 = data2
+                };
+                taskList.Add(taskInfo);
+
+                sceneTarget.TaskList = taskList;
+                sceneTarget.DeviceUI = device;
+                selectedAction?.Invoke(sceneTarget);
+                dialog.RemoveFromParent();
+            };
+        }
+        /// <summary>
+        /// 绌鸿皟
+        /// </summary>
+        /// <param name="dialog"></param>
+        /// <param name="device"></param>
+        /// <param name="sceneTarget"></param>
+        private void SelectThermostat(FrameLayout dialog, DeviceUI device, SceneTargetDeviceUI sceneTarget)
+        {
+        /// 娓╁害
+        int tempId=0;
+        /// 妯″紡
+        int modelId=0;
+        /// 椋庨��
+        int fanid=0;
+
+            var selectFL = new FrameLayout
+            {
+                Y = Application.GetRealHeight(815),
+                Height = Application.GetRealHeight(1106),
+            };
+            dialog.AddChidren(selectFL);
+            //selectFL.Animate = Animate.DownToUp;
+
+            var titleBG = new FrameLayout
+            {
+                Height = Application.GetRealHeight(138 * 2),
+                Radius = (uint)Application.GetRealHeight(58),
+                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
+            };
+            selectFL.AddChidren(titleBG);
+
+            var titleFL = new FrameLayout
+            {
+                Height = Application.GetRealHeight(138),
+            };
+            selectFL.AddChidren(titleFL);
+
+            var line = new Button
+            {
+                Y = titleFL.Height - 1,
+                Height = 1,
+                BackgroundColor = ZigbeeColor.Current.GXCGrayLineColor2
+            };
+            titleFL.AddChidren(line);
+
+            var cancleBtn = new Button
+            {
+                X = Application.GetRealWidth(80),
+                Width = Application.GetRealWidth(200),
+                TextColor = ZigbeeColor.Current.GXCTextGrayColor,
+                TextSize = 14,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextID = R.MyInternationalizationString.Cancel
+            };
+            titleFL.AddChidren(cancleBtn);
+
+            var deviceName = new Button
+            {
+                Width = Application.GetRealWidth(400),
+                Gravity = Gravity.CenterHorizontal,
+                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
+                TextSize = 16,
+                TextAlignment = TextAlignment.CenterLeft,
+                Text = device.CommonDevice.DeviceEpointName
+            };
+            titleFL.AddChidren(deviceName);
+
+            var comfrimBtn = new Button
+            {
+                X = Application.GetRealWidth(800),
+                Width = Application.GetRealWidth(200),
+                TextColor = ZigbeeColor.Current.GXCTextSelectedColor2,
+                TextSize = 14,
+                TextAlignment = TextAlignment.CenterRight,
+                TextID = R.MyInternationalizationString.Complete
+            };
+            titleFL.AddChidren(comfrimBtn);
+
+            var itemFL = new FrameLayout
+            {
+                Y = titleFL.Bottom,
+                Height = Application.GetRealHeight(968),
+                BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
+            };
+            selectFL.AddChidren(itemFL);
+
+            var open = new SelectDeviceWithPickViewRow(0, 60);
+            itemFL.AddChidren(open);
+            open.Init();
+            open.SetTitle(R.MyInternationalizationString.Open);
+            open.IsSelected = true;
+
+            open.pickerView.OnSelectChangeEvent = (l1, l2, l3) =>
+            {
+                tempId = l1;
+                modelId = l2;
+                fanid = l3;
+            };
+
+            var shut = new SelectSceneStatuRow(0, 60 + 703 + 30);
+            itemFL.AddChidren(shut);
+            shut.Init();
+            shut.hideLine(true);
+            shut.SetTitle(R.MyInternationalizationString.Shut);
+
+            open.ClickButton.MouseUpEventHandler += (sender, e) =>
+            {
+                open.IsSelected = true;
+                shut.IsSelected = false;
+            };
+
+            shut.ClickButton.MouseUpEventHandler += (sender, e) =>
+            {
+                open.IsSelected = false;
+                shut.IsSelected = true;
+            };
+
+            cancleBtn.MouseUpEventHandler = (sender, e) =>
+            {
+                dialog.RemoveAll();
+                dialog.RemoveFromParent();
+            };
+
+            if (sceneTarget.TaskList.Count > 0)
+            {
+                if (sceneTarget.TaskList.Count == 1)
+                {
+                    open.IsSelected = false;
+                    shut.IsSelected = true;
+                }
+                else
+                {
+                    open.IsSelected = true;
+                    shut.IsSelected = false;
+
+                    for (int i = 0; i < sceneTarget.TaskList.Count; i++)
+                    {
+                        var tasklist = sceneTarget.TaskList[i];
+                        if (tasklist.Data1 == 6)
+                        {
+                            fanid = open.fanList.IndexOf(tasklist.Data2);
+                        }
+                        if (tasklist.Data1 == 3)
+                        {
+                            modelId = open.modeList.IndexOf(tasklist.Data2);
+                        }
+                        if (tasklist.Data1 == 4 || tasklist.Data1 == 5)
+                        {
+                            tempId = open.temperatureList.IndexOf(tasklist.Data2 / 100);
+                        }
+                    }
+                    open.pickerView.setCurrentItems(tempId, modelId, fanid);
+                }
+            }
+
+            comfrimBtn.MouseUpEventHandler = (sender, e) =>
+            {
+
+                var taskList = new List<ZigBee.Device.Scene.TaskListInfo> { };
+
+                int taskType = 5;
+                int data1 = 0;
+                int data2 = 0;
+
+                if (shut.IsSelected)
+                {
+                    //鍏�
+                    data1 = 3;
+                    data2 = 0;
+                    var taskInfo = new ZigBee.Device.Scene.TaskListInfo
+                    {
+                        TaskType = taskType,
+                        Data1 = data1,
+                        Data2 = data2
+                    };
+                    taskList.Add(taskInfo);
+                }
+                else
+                {
+                    //fan
+                    var taskInfo = new ZigBee.Device.Scene.TaskListInfo
+                    {
+                        TaskType = taskType,
+                        Data1 = 6,
+                        Data2 = open.fanList[fanid]
+                    };
+                    taskList.Add(taskInfo);
+
+                    //mode
+                    var taskInfo2 = new ZigBee.Device.Scene.TaskListInfo
+                    {
+                        TaskType = taskType,
+                        Data1 = 3,
+                        Data2 = open.modeList[modelId]
+                    };
+                    taskList.Add(taskInfo2);
+
+                    //tem
+                    if (open.modeList[modelId] == 4)
+                    {
+                        //heat
+                        var taskInfo3 = new ZigBee.Device.Scene.TaskListInfo
+                        {
+                            TaskType = taskType,
+                            Data1 = 4,
+                            Data2 = open.temperatureList[tempId] * 100
+                        };
+                        taskList.Add(taskInfo3);
+
+                    }
+                    else
+                    {
+                        //heat
+                        var taskInfo3 = new ZigBee.Device.Scene.TaskListInfo
+                        {
+                            TaskType = taskType,
+                            Data1 = 5,
+                            Data2 = open.temperatureList[tempId] * 100
+                        };
+                        taskList.Add(taskInfo3);
+                    }
+                }
+
+                sceneTarget.TaskList = taskList;
+                sceneTarget.DeviceUI = device;
+                selectedAction?.Invoke(sceneTarget);
+                dialog.RemoveFromParent();
+            };
+        }
+
+        #endregion
+
     }
 }

--
Gitblit v1.8.0