From 9a4b76398009cf76c508d61f7e48fb6f5cb7ac2d Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期二, 21 七月 2020 09:46:53 +0800
Subject: [PATCH] 请合并最新多功能面板代码

---
 ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs | 1426 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 1,426 insertions(+), 0 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs
new file mode 100755
index 0000000..cb02f21
--- /dev/null
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs
@@ -0,0 +1,1426 @@
+锘縰sing System;
+using Shared.Common;
+using Shared.R;
+using Shared;
+using ZigBee.Device;
+using System.Collections.Generic;
+namespace Shared.Phone.Device.Logic
+{
+    public class CurrentDeviceState
+    {
+        /// <summary>
+        /// 閫変腑璇ヨ澶囧姛鑳戒綔涓烘潯浠舵垨鑰呯洰鏍囩殑瑙嗗浘鏂规硶
+        /// </summary>
+        /// <param name="common">Common.</param>
+        public static void CurrentDeviceView(FrameLayout flMain, CommonDevice common, bool edit, string str,int intValue)
+        {
+            #region  -------鐣岄潰甯冨眬閮ㄥ垎
+            //涓嶈褰撳墠鐣岄潰婊戝姩
+            UserView.HomePage.Instance.ScrollEnabled = false;
+            CompleteView completeView = new CompleteView();
+            flMain.AddChidren(completeView.Show(1));
+            completeView.Btntitle.Text = LocalDevice.Current.GetDeviceEpointName(common);
+            EventHandler<MouseEventArgs> clickcancel = (sender, e) =>
+            {
+                if (!edit)
+                {
+                    UserView.HomePage.Instance.ScrollEnabled = true;
+                }
+                flMain.RemoveFromParent();
+            };
+            flMain.MouseUpEventHandler += clickcancel;
+            completeView.Btncancel.MouseUpEventHandler += clickcancel;
+
+            mFunView openView = new mFunView();
+            openView.frameLayout.Y = Application.GetRealHeight(140 + 20);
+            //completeView.Show(l).AddChidren(openView.Show());
+            openView.titleBtn.TextID = MyInternationalizationString.open;
+
+            mFunView closeView = new mFunView();
+            closeView.frameLayout.Y = Application.GetRealHeight(140 + 20+160);
+            // closeView.frameLayout.Y = openView.frameLayout.Bottom;
+            //completeView.Show(l).AddChidren(closeView.Show());
+            closeView.titleBtn.TextID = MyInternationalizationString.close;
+
+            mFunView takebackView = new mFunView();
+             takebackView.frameLayout.Y = Application.GetRealHeight(140+20+160+160);
+            // takebackView.frameLayout.Y = closeView.frameLayout.Bottom;
+            //completeView.Show(l).AddChidren(takebackView.Show());
+            takebackView.titleBtn.TextID = MyInternationalizationString.onoff;
+            takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+            #region  -------杩涘害鏉℃帶浠�
+            var horizontalSeekBarRowLien = new RowLayout
+            {
+                //Y = openView.frameLayout.Bottom,
+                Width = Application.GetRealWidth(915),
+                Height = Application.GetRealHeight(160),
+                X = Application.GetRealWidth(80),
+                LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
+            };
+            var horizontalSeekBarVol = new DiyImageSeekBar
+            {
+                //Y = openView.frameLayout.Bottom,//杩涘害鏉$埗鎺т欢Y鍧愭爣
+                X = Application.GetRealWidth(80),//杩涘害鏉鍧愭爣
+                Width = Application.GetRealWidth(915),//杩涘害鏉$殑闀垮害
+                Height = Application.GetRealHeight(160),//杩涘害鏉$埗鎺т欢楂樺害
+                IsProgressTextShow = true,//鏄剧ず鐧惧垎姣�
+                IsClickable = false,//杩涘害鏉℃槸鍚︽粦鍔�
+                ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected,//閫変腑杩涘害鏉¢鑹�
+                ThumbImagePath = "ZigeeLogic/progressbtn2.png",//杩涘害鏉℃寜閽浘鏍�
+                ThumbImageHeight = Application.GetRealHeight(56),//杩涘害鏉℃寜閽浘鏍囩殑楂樺害锛堥粯璁ゆ鏂瑰舰锛氬鍜岄珮涓�鏍凤級
+                ProgressTextColor = ZigbeeColor.Current.LogicBtnCancelColor,
+                ProgressTextSize = 9,//鏄剧ず鐧惧垎姣斿瓧浣撳ぇ灏�12
+                SeekBarViewHeight = Application.GetRealHeight(5),//杩涘害鏉$殑楂樺害10
+            };
+            #endregion
+            #endregion
+
+            #region  -------鏁版嵁澶勭悊閮ㄥ垎
+            #region  -------鏉′欢
+            Dictionary<string, string> deviceConditionsInfo = new Dictionary<string, string>();
+            Send.dictionary(deviceConditionsInfo, "Type", "1");
+            Send.dictionary(deviceConditionsInfo, "IsValid", "1");
+            Send.dictionary(deviceConditionsInfo, "MacAddr", common.DeviceAddr);
+            Send.dictionary(deviceConditionsInfo, "Epoint", common.DeviceEpoint.ToString());
+            Dictionary<string, string> devices = null;
+            #endregion
+            #region  -------鐩爣
+            Dictionary<string, object> actionsInfo = new Dictionary<string, object>();
+            List<Dictionary<string, string>> taskListInfo = new List<Dictionary<string, string>>();
+            actionsInfo.Add("LinkType", 0);
+            actionsInfo.Add("DeviceAddr", common.DeviceAddr);
+            actionsInfo.Add("Epoint", common.DeviceEpoint);
+            actionsInfo.Add("Time", 0);
+            actionsInfo.Add("TaskList", taskListInfo);
+            List<Dictionary<string, string>> TaskList = null;
+            #endregion
+            var _if=str.Split('_');
+            if (edit)
+            {
+                if (_if[0]== "condition")
+                {
+                    var deviceinfo = Common.Logic.CurrentLogic.Conditions[intValue];
+                    if (deviceinfo["Type"] == "1")
+                    {
+                        if (common.DeviceAddr == deviceinfo["MacAddr"] && common.DeviceEpoint.ToString() == deviceinfo["Epoint"])
+                        {
+                            devices = deviceinfo;
+
+                        }
+                    }
+                    //foreach (var deviceinfo in Common.Logic.CurrentLogic.Conditions)
+                    //{
+                    //    if (deviceinfo["Type"] == "1")
+                    //    {
+                    //        if (common.DeviceAddr == deviceinfo["MacAddr"] && common.DeviceEpoint.ToString() == deviceinfo["Epoint"])
+                    //        {
+                    //            devices = deviceinfo;
+                    //            break;
+                    //        }
+                    //    }
+                    //}
+                }
+                else
+                {
+                    var deviceinfo = Common.Logic.CurrentLogic.Actions[intValue];
+                    if (deviceinfo["LinkType"].ToString() == "0")
+                    {
+
+                        if (deviceinfo["DeviceAddr"].ToString() == common.DeviceAddr && deviceinfo["Epoint"].ToString() == common.DeviceEpoint.ToString())
+                        {
+                            TaskList = deviceinfo["TaskList"] as List<Dictionary<string, string>>;
+                        }
+                    }
+                    //foreach (var deviceinfo in Common.Logic.CurrentLogic.Actions)
+                    //{
+                    //    if (deviceinfo["LinkType"].ToString() == "0")
+                    //    {
+                    //        if (deviceinfo["DeviceAddr"].ToString() == common.DeviceAddr && deviceinfo["Epoint"].ToString() == common.DeviceEpoint.ToString())
+                    //        {
+                    //            TaskList = deviceinfo["TaskList"] as List<Dictionary<string, string>>;
+                    //            break;
+                    //        }
+                    //    }
+                    //}
+                }
+            }
+            #endregion
+            int l = 0;
+            string SelectedDeviceStatus = "";
+            switch (common.Type)
+            {
+                ///鐏厜
+                case DeviceType.OnOffOutput:
+                    {
+                        if (_if[0] == "condition")
+                        {
+                            l = 2;
+                            Send.dictionary(deviceConditionsInfo, "Cluster_ID", "6");
+                            Send.dictionary(deviceConditionsInfo, "AttriButeId", "0");
+                            Send.dictionary(deviceConditionsInfo, "Range", "1");
+                            Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
+
+                            #region  鐏厜View
+                            completeView.Show(l).AddChidren(openView.Show());
+                            completeView.Show(l).AddChidren(closeView.Show());
+                            closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                            #endregion
+
+                            ///鐐瑰嚮纭浜嬩欢
+                            openView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                            {
+                                openView.selectedIconBtn.Visible = true;
+                                closeView.selectedIconBtn.Visible = false;
+                                openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                                closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                SelectedDeviceStatus = "OnOffOutput";
+                                Send.dictionary(deviceConditionsInfo, "AttriButeData1", "1");//榛樿鍊�
+
+
+                            };
+
+                            ///鐐瑰嚮鍙栨秷浜嬩欢
+                            closeView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                            {
+                                openView.selectedIconBtn.Visible = false;
+                                closeView.selectedIconBtn.Visible = true;
+                                openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                                SelectedDeviceStatus = "OnOffOutput";
+                                Send.dictionary(deviceConditionsInfo, "AttriButeData1", "0");//榛樿鍊�
+
+                            };
+
+                            if (edit && devices != null)
+                            {
+                                if (devices["AttriButeId"] == "0")
+                                {
+                                    if (devices["AttriButeData1"] == "1")
+                                    {
+                                        openView.selectedIconBtn.Visible = true;
+                                        closeView.selectedIconBtn.Visible = false;
+                                        openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                                        closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                    }
+                                    else
+                                    {
+                                        openView.selectedIconBtn.Visible = false;
+                                        closeView.selectedIconBtn.Visible = true;
+                                        openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                        closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+
+                                    }
+                                }
+                            }
+                        }
+                        else
+                        {
+                            l = 3;
+                            #region  ----鍒濆鍖栬澶囧姛鑳芥暟鎹�----
+                            Dictionary<string, string> switchdictionary = new Dictionary<string, string>();
+                            Send.dictionary(switchdictionary, "TaskType", "1");
+                            Send.dictionary(switchdictionary, "Data1", "0");
+                            Send.dictionary(switchdictionary, "Data2", "0");
+                            taskListInfo.Add(switchdictionary);
+
+                            #endregion
+
+                            #region  鐏厜View
+
+                            completeView.Show(l).AddChidren(openView.Show());
+                            completeView.Show(l).AddChidren(closeView.Show());
+                            //closeView.frameLayout.Y = openView.frameLayout.Bottom;
+                            completeView.Show(l).AddChidren(takebackView.Show());
+                            //takebackView.frameLayout.Y = closeView.frameLayout.Bottom;
+                            takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                            #endregion
+
+                            ///纭浜嬩欢
+                            openView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                            {
+                                SelectedDeviceStatus = "yes";
+                                openView.selectedIconBtn.Visible = true;
+                                closeView.selectedIconBtn.Visible = false;
+                                takebackView.selectedIconBtn.Visible = false;
+                                Send.dictionary(switchdictionary, "Data1", "1");//榛樿鍊�
+                            };
+                            ///鍙栨秷浜嬩欢
+                            closeView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                            {
+                                SelectedDeviceStatus = "yes";
+                                openView.selectedIconBtn.Visible = false;
+                                closeView.selectedIconBtn.Visible = true;
+                                takebackView.selectedIconBtn.Visible = false;
+                                Send.dictionary(switchdictionary, "Data1", "0");//榛樿鍊�
+
+                            };
+                            //鍙栧弽
+                            takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                            {
+                                SelectedDeviceStatus = "yes";
+                                openView.selectedIconBtn.Visible = false;
+                                closeView.selectedIconBtn.Visible = false;
+                                takebackView.selectedIconBtn.Visible = true;
+                                Send.dictionary(switchdictionary, "Data1", "2");//榛樿鍊�
+
+                            };
+
+                            if (edit && TaskList != null)
+                            {
+                                foreach (var value in TaskList)
+                                {
+                                    if (value["TaskType"] == "1")
+                                    {
+                                        var data1 = value["Data1"];
+                                        Send.dictionary(switchdictionary, "Data1", data1);
+                                        openView.selectedIconBtn.Visible = false;
+                                        closeView.selectedIconBtn.Visible = false;
+                                        takebackView.selectedIconBtn.Visible = false;
+                                        switch (data1)
+                                        {
+                                            case "1":
+                                                {
+                                                    openView.selectedIconBtn.Visible = true;
+                                                }
+                                                break;
+                                            case "0":
+                                                {
+                                                    closeView.selectedIconBtn.Visible = true;
+                                                }
+                                                break;
+                                            case "2":
+                                                {
+                                                    takebackView.selectedIconBtn.Visible = true;
+                                                }
+                                                break;
+                                        }
+
+                                    }
+
+                                }
+                            }
+                        }
+                    }
+                    break;
+                case DeviceType.IASZone:
+                    {
+                        var iASZonedevice = common as IASZone;
+                        if (iASZonedevice.DeviceID != 1026)
+                        {
+                            break;
+                        }
+
+                        Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1280");
+                        Send.dictionary(deviceConditionsInfo, "AttriButeId", "1281");
+                        Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
+
+                        int timeValue = 0;
+                        ///鐐瑰嚮纭浜嬩欢
+                        openView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SelectedDeviceStatus = "IASZone";
+                            openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                            closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                            openView.selectedIconBtn.Visible = true;
+                            closeView.selectedIconBtn.Visible = false;
+                            if (iASZonedevice.IasDeviceType == 13||iASZonedevice.IasDeviceType == 541)
+                            {
+                                closeView.selectedIconBtn.Visible = true;
+                            }
+                            Send.dictionary(deviceConditionsInfo, "Range", "5");
+                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", "1");
+                        };
+                        ///鐐瑰嚮鍙栨秷浜嬩欢
+                        closeView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SelectedDeviceStatus = "IASZone";
+                            openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                            closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                            openView.selectedIconBtn.Visible = false;
+                            closeView.selectedIconBtn.Visible = true;
+                            Send.dictionary(deviceConditionsInfo, "Range", "1");
+                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", "0");
+                            if (iASZonedevice.IasDeviceType == 13|| iASZonedevice.IasDeviceType == 541)
+                            {
+                                SelectedDeviceStatus = "";
+                                closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                var ignoreTime = new IgnoreTime();
+                                UserView.HomePage.Instance.AddChidren(ignoreTime);
+                                UserView.HomePage.Instance.PageIndex += 1;
+                                ignoreTime.Show(common, closeView.titleBtn.Text, edit, timeValue, _if[1]);
+                            }
+                        };
+
+                        switch (iASZonedevice.IasDeviceType)
+                        {
+                            case 13:
+                                {
+                                    openView.titleBtn.TextID = MyInternationalizationString.someone;
+                                    closeView.titleBtn.TextID = MyInternationalizationString.unattendedtime1;
+                                    closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                                    closeView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png";
+                                    closeView.selectedIconBtn.Visible = true;
+                                    completeView.Show(2).AddChidren(openView.Show());
+                                    completeView.Show(2).AddChidren(closeView.Show());
+                                }
+                                break;
+                            case 21:
+                            case 22:
+                                {
+                                    #region
+                                    var view = completeView.Show(3);
+                                    openView.titleBtn.TextID = MyInternationalizationString.logicopen;
+                                    closeView.titleBtn.TextID = MyInternationalizationString.logicclose;
+                                    view.AddChidren(openView.Show());
+                                    view.AddChidren(closeView.Show());
+
+                                    takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                                    takebackView.selectedIconBtn.Visible = true;
+                                    takebackView.titleBtn.TextID = MyInternationalizationString.closetimeout;
+                                    takebackView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png";
+                                    view.AddChidren(takebackView.Show());
+                                    takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                                    {
+                                        SelectedDeviceStatus = "";
+                                        openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                        closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                        openView.selectedIconBtn.Visible = false;
+                                        closeView.selectedIconBtn.Visible = false;
+                                        var ignoreTime = new IgnoreTime();
+                                        UserView.HomePage.Instance.AddChidren(ignoreTime);
+                                        UserView.HomePage.Instance.PageIndex += 1;
+                                        ignoreTime.Show(common, takebackView.titleBtn.Text, edit, timeValue, _if[1]);
+
+                                    };
+
+                                    #endregion
+                                }
+                                break;
+                            case 40:
+                                {
+
+                                    openView.titleBtn.TextID = MyInternationalizationString.smokescreen;
+                                    openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                                    completeView.Show(1).AddChidren(openView.Show());
+                                }
+                                break;
+                            case 42:
+                                {
+                                    openView.titleBtn.TextID = MyInternationalizationString.waterleakage;
+                                    closeView.titleBtn.TextID = MyInternationalizationString.noleakage;
+                                    closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                                    completeView.Show(2).AddChidren(openView.Show());
+                                    completeView.Show(2).AddChidren(closeView.Show());
+
+                                }
+                                break;
+                            case 43:
+                                {//鍙厓璇寸殑
+                                    openView.titleBtn.TextID = MyInternationalizationString.gas;
+                                    openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                                    completeView.Show(1).AddChidren(openView.Show());
+                                }
+                                break;
+                            case 44:
+                                {
+                                    openView.titleBtn.TextID = MyInternationalizationString.emergencybutton;
+                                    openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                                    completeView.Show(1).AddChidren(openView.Show());
+                                }
+                                break;
+                            case 277:
+                                {
+                                    openView.titleBtn.TextID = MyInternationalizationString.callthepolice;
+                                    openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                                    completeView.Show(1).AddChidren(openView.Show());
+                                }
+                                break;
+                            case 541:
+                                {
+                                    int _height = 3;
+                                    if (edit)
+                                    {
+                                        _height = 2;
+                                    }
+                                    var view = completeView.Show(_height);
+                                    openView.titleBtn.TextID = MyInternationalizationString.someone;
+                                    closeView.titleBtn.TextID = MyInternationalizationString.unattendedtime1;
+                                    closeView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png";
+                                    closeView.selectedIconBtn.Visible = true;
+                                    view.AddChidren(openView.Show());
+                                    view.AddChidren(closeView.Show());
+
+                                    takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                                    takebackView.selectedIconBtn.Visible = true;
+                                    takebackView.titleBtn.TextID = MyInternationalizationString.ambientLight;
+                                    takebackView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png";
+                                    if (edit)
+                                    {
+
+                                        if (devices["Cluster_ID"] == "1024")
+                                        {
+                                            flMain.RemoveFromParent();
+                                            var illumination = new Illumination();
+                                            UserView.HomePage.Instance.AddChidren(illumination);
+                                            UserView.HomePage.Instance.PageIndex += 1;
+                                            illumination.Show(common, takebackView.titleBtn.Text, int.Parse(devices["AttriButeData1"]), true);
+                                        }
+                                        else
+                                        {
+                                            closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                                        }
+                                    }
+                                    else
+                                    {
+                                        view.AddChidren(takebackView.Show());
+
+                                    }
+
+
+                                    takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                                    {
+                                        SelectedDeviceStatus = "";
+                                        openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                        openView.selectedIconBtn.Visible = false;
+                                        var illumination = new Illumination();
+                                        UserView.HomePage.Instance.AddChidren(illumination);
+                                        UserView.HomePage.Instance.PageIndex += 1;
+                                        illumination.Show(common,takebackView.titleBtn.Text, 0, false);
+
+                                    };
+                                }
+                                break;
+                            default:
+                                {
+                                    openView.titleBtn.TextID = MyInternationalizationString.callthepolice;
+                                    openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                                    completeView.Show(1).AddChidren(openView.Show());
+
+                                }
+                                break;
+                        }
+                        if (edit && devices != null)
+                        {
+                            if (devices["AttriButeId"] == "1281")
+                            {
+                                if (devices.ContainsKey("IgnoreTime"))
+                                {
+                                    timeValue = int.Parse(devices["IgnoreTime"]);
+                                }
+                                else
+                                {
+                                    if (devices["AttriButeData1"] == "1")
+                                    {
+                                        openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                                        closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                        openView.selectedIconBtn.Visible = true;
+                                        closeView.selectedIconBtn.Visible = false;
+                                    }
+                                    else
+                                    {
+                                        openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                        closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                                        openView.selectedIconBtn.Visible = false;
+                                        closeView.selectedIconBtn.Visible = true;
+                                    }
+
+                                }
+
+
+                            }
+                            
+                        }
+
+                    }
+                    break;
+                case DeviceType.OnOffSwitch:
+                    {
+                        l = 1;
+                        Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1282");
+                        Send.dictionary(deviceConditionsInfo, "AttriButeId", "1283");
+                        Send.dictionary(deviceConditionsInfo, "Range", "0");//鎸夐敭鐗规畩
+                        Send.dictionary(deviceConditionsInfo, "AttriButeData1", "0");
+                        Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
+
+                        completeView.Show(l).AddChidren(openView.Show());
+                        openView.titleBtn.Text = Language.StringByID(MyInternationalizationString.OnOffSwitch) + common.DeviceEpoint.ToString();
+                        openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                        openView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SelectedDeviceStatus = "OnOffSwitch";
+                            openView.selectedIconBtn.Visible = true;
+                            openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                        };
+
+                        if (edit && devices != null)
+                        {
+                            openView.selectedIconBtn.Visible = true;
+                            openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                        }
+
+                    }
+                    break;
+                case DeviceType.DoorLock:
+                    {
+
+                        flMain.RemoveFromParent();
+                        var memberList = new MemberList();
+                        UserView.HomePage.Instance.AddChidren(memberList);
+                        UserView.HomePage.Instance.PageIndex += 1;
+                        MemberList.edit = false;
+                        memberList.Show(common);
+                    }
+                    break;
+                case DeviceType.TemperatureSensor:
+                    {
+                        l = 4;
+                        string current = Language.StringByID(MyInternationalizationString.current);
+                        completeView.Show(l);
+                        var temperatureSensor = common as TemperatureSensor;
+                        SelectedDeviceStatus = "TemperatureSensor";
+                        #region  甯冨眬View
+                        var PickerViewfra = new FrameLayout
+                        {
+                            Y = Application.GetRealHeight(140),
+                            Height = Application.GetRealHeight(640),
+                        };
+                        completeView.Show(l).AddChidren(PickerViewfra);
+                        var mUIPickerView = new UIPickerView
+                        {
+                            Height = Application.GetRealHeight(640 - 5),
+                        };
+                        PickerViewfra.AddChidren(mUIPickerView);
+
+                        var mList1 = new List<string> { ">", "<", "=", "鈮�", "鈮�" };
+                        var mList2 = new List<string>();
+                        var mList3 = new List<string>();
+                        for (int i = 1; i <= 100; i++)
+                        {
+                            mList2.Add(i.ToString());
+                        }
+                        if (temperatureSensor.SensorDiv == 1)
+                        {
+                            mList3.Add("鈩�");
+                            Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1026");
+                            Send.dictionary(deviceConditionsInfo, "AttriButeId", "0");
+                            Send.dictionary(deviceConditionsInfo, "Range", "1");//1:绛変簬AttriButeData1鏃惰Е鍙戝姩浣�
+                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", "5000");//榛樿娓╁害鍊�50鈩�
+                            Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
+                        }
+                        else
+                        {
+                            mList3.Add("%");
+                            Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1029");
+                            Send.dictionary(deviceConditionsInfo, "AttriButeId", "0");
+                            Send.dictionary(deviceConditionsInfo, "Range", "1");//1:绛変簬AttriButeData1鏃惰Е鍙戝姩浣�
+                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", "5000");//榛樿婀垮害鍊�50%
+                            Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
+                        }
+                        mUIPickerView.setNPicker(mList1, mList2, mList3);
+
+                        #endregion
+
+                        mUIPickerView.OnSelectChangeEvent += (s1, s2, s3) =>
+                        {
+                            ///娓╁害杩涚巼杞崲*100
+                            var strValue = (int.Parse(mList2[s2]) * 100).ToString();
+                            SelectedDeviceStatus = "TemperatureSensor";
+                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", strValue);
+                            switch (mList1[s1])
+                            {
+                                case ">":
+                                    {
+                                        Send.dictionary(deviceConditionsInfo, "Range", "0");
+                                    }
+                                    break;
+                                case "<":
+                                    {
+                                        Send.dictionary(deviceConditionsInfo, "Range", "2");
+                                    }
+                                    break;
+                                case "=":
+                                    {
+                                        Send.dictionary(deviceConditionsInfo, "Range", "1");
+                                    }
+                                    break;
+                                case "鈮�":
+                                    {
+                                        Send.dictionary(deviceConditionsInfo, "Range", "6");
+                                    }
+                                    break;
+                                case "鈮�":
+                                    {
+                                        Send.dictionary(deviceConditionsInfo, "Range", "7");
+                                    }
+                                    break;
+                            }
+                        };
+
+                        //榛樿=,50
+                        int index1 = 2, index2 = 49;
+                        if (edit && devices != null)
+                        {
+                            SelectedDeviceStatus = "";
+                            string s = "";
+                            switch (devices["Range"])
+                            {
+                                case "0":
+                                    {
+                                        s = ">";
+                                    }
+                                    break;
+                                case "1":
+                                    {
+                                        s = "=";
+                                    }
+                                    break;
+                                case "2":
+                                    {
+                                        s = "<";
+                                    }
+                                    break;
+                                case "6":
+                                    {
+                                        s = "鈮�";
+                                    }
+                                    break;
+                                case "7":
+                                    {
+                                        s = "鈮�";
+                                    }
+                                    break;
+                            }
+                            //鏌ユ壘绱㈠紩
+                            index1 = mList1.IndexOf(s);
+                            //杞崲娓╁害鍊�/100
+                            var dd = (int.Parse(devices["AttriButeData1"])/100).ToString();
+                            index2 = mList2.IndexOf(dd);
+
+                        }
+                        ///鏇存柊鏈�鏂扮姸鎬侊紱
+                        mUIPickerView.setCurrentItems(index1, index2, 0);
+
+                    }
+                    break;
+                ///璋冨厜鐏厜
+                case DeviceType.DimmableLight:
+                    {
+                        l = 4;
+                        #region  ----鍒濆鍖栬澶囧姛鑳芥暟鎹�----
+                        Dictionary<string, string> switchdictionary = new Dictionary<string, string>();
+                        Send.dictionary(switchdictionary, "Data2", "0");
+                        taskListInfo.Add(switchdictionary);
+                        completeView.Show(l).AddChidren(openView.Show());
+                        openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                   
+                        horizontalSeekBarRowLien.Y = openView.frameLayout.Bottom;
+                        horizontalSeekBarVol.Y = openView.frameLayout.Bottom;
+                        completeView.Show(l).AddChidren(horizontalSeekBarRowLien);
+                        completeView.Show(l).AddChidren(horizontalSeekBarVol);
+
+                        closeView.frameLayout.Y = horizontalSeekBarRowLien.Bottom;
+                        completeView.Show(l).AddChidren(closeView.Show());
+
+                        takebackView.frameLayout.Y = closeView.frameLayout.Bottom;
+                        completeView.Show(l).AddChidren(takebackView.Show());
+                        takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                        #endregion
+                        int Progressvalue = 100;
+                        EventHandler<int> progressclick = (sender, e) =>
+                        {
+                            SelectedDeviceStatus = "yes";
+                            Progressvalue = horizontalSeekBarVol.Progress;
+                            Send.dictionary(switchdictionary, "TaskType", "3");
+                            //鏈�澶т寒搴﹀�兼槸254闇�瑕佽浆鎹紱
+                            var lightbrightnessvalue = (254 * horizontalSeekBarVol.Progress) / 100;
+                            Send.dictionary(switchdictionary, "Data1", lightbrightnessvalue.ToString());
+
+                        };
+                        horizontalSeekBarVol.OnProgressChangedEvent += progressclick;
+                        horizontalSeekBarVol.OnStopTrackingTouchEvent += progressclick;
+                        ///纭浜嬩欢
+                        openView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SelectedDeviceStatus = "yes";
+                            horizontalSeekBarVol.IsClickable = true;
+                            horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected;
+                            openView.selectedIconBtn.Visible = true;
+                            closeView.selectedIconBtn.Visible = false;
+                            takebackView.selectedIconBtn.Visible = false;
+                            horizontalSeekBarVol.Progress = Progressvalue;
+                            Send.dictionary(switchdictionary, "TaskType", "3");
+                            //鏈�澶т寒搴﹀�兼槸254闇�瑕佽浆鎹紱
+                            var lightbrightnessvalue = (254 * horizontalSeekBarVol.Progress) / 100;
+                            Send.dictionary(switchdictionary, "Data1", lightbrightnessvalue.ToString());
+                        };
+
+                        ///鍙栨秷浜嬩欢
+                        closeView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SelectedDeviceStatus = "yes";
+                            horizontalSeekBarVol.IsClickable = false;
+                            horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor;
+                            openView.selectedIconBtn.Visible = false;
+                            closeView.selectedIconBtn.Visible = true;
+                            takebackView.selectedIconBtn.Visible = false;
+                            Send.dictionary(switchdictionary, "TaskType", "1");
+                            Send.dictionary(switchdictionary, "Data1", "0");//榛樿鍊�
+                        };
+
+                        //鍙栧弽
+                        takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SelectedDeviceStatus = "yes";
+                            horizontalSeekBarVol.IsClickable = false;
+                            horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor;
+                            openView.selectedIconBtn.Visible = false;
+                            closeView.selectedIconBtn.Visible = false;
+                            takebackView.selectedIconBtn.Visible = true;
+                            Send.dictionary(switchdictionary, "TaskType", "1");
+                            Send.dictionary(switchdictionary, "Data1", "2");//榛樿鍊�
+
+                        };
+                        if (edit && TaskList != null)
+                        {
+                            foreach (var value in TaskList)
+                            {
+                                var tasktype = value["TaskType"];
+                                var data1 = value["Data1"];
+                                Send.dictionary(switchdictionary, "TaskType", tasktype);
+                                Send.dictionary(switchdictionary, "Data1", data1);
+                                openView.selectedIconBtn.Visible = false;
+                                closeView.selectedIconBtn.Visible = false;
+                                takebackView.selectedIconBtn.Visible = false;
+                                horizontalSeekBarVol.IsClickable = false;
+                                horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor;
+                                if (tasktype == "1")
+                                {
+                                    if (data1 == "0")
+                                    {
+                                        closeView.selectedIconBtn.Visible = true;
+                                    }
+                                    else if (data1 == "2")
+                                    {
+                                        takebackView.selectedIconBtn.Visible = true;
+                                    }
+                                }
+                                else if (tasktype == "3")
+                                {
+                                    openView.selectedIconBtn.Visible = true;
+                                    horizontalSeekBarVol.IsClickable = true;
+                                    horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected;
+                                    horizontalSeekBarVol.Progress = int.Parse(data1) * 100 / 254;
+                                    Progressvalue = horizontalSeekBarVol.Progress;
+
+                                }
+                                break;
+
+                            }
+                        }
+
+                    }
+                    break;
+                ///绐楀笜
+                case DeviceType.WindowCoveringDevice:
+                    {
+                        l = 3;
+                        #region  ----鍒濆鍖栬澶囧姛鑳芥暟鎹�----
+                        Dictionary<string, string> switchdictionary = new Dictionary<string, string>();
+                        Send.dictionary(switchdictionary, "TaskType", "6");
+                        taskListInfo.Add(switchdictionary);
+
+                        completeView.Show(l).AddChidren(openView.Show());
+                        openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+
+
+
+                        horizontalSeekBarRowLien.Y = openView.frameLayout.Bottom;
+                        horizontalSeekBarVol.Y = openView.frameLayout.Bottom;
+                        completeView.Show(l).AddChidren(horizontalSeekBarRowLien);
+                        completeView.Show(l).AddChidren(horizontalSeekBarVol);
+
+                        closeView.frameLayout.Y = horizontalSeekBarRowLien.Bottom;
+                        completeView.Show(l).AddChidren(closeView.Show());
+                        closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+                        #endregion
+                        int Progressvalue = 100;
+                        EventHandler<int> progressclick = (sender, e) =>
+                        {
+                            SelectedDeviceStatus = "yes";
+                            Progressvalue = horizontalSeekBarVol.Progress;
+                            Send.dictionary(switchdictionary, "Data1", "5");
+                            Send.dictionary(switchdictionary, "Data2", horizontalSeekBarVol.Progress.ToString());
+                        };
+                        horizontalSeekBarVol.OnProgressChangedEvent += progressclick;
+                        horizontalSeekBarVol.OnStopTrackingTouchEvent += progressclick;
+                        ///纭浜嬩欢
+                        openView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SelectedDeviceStatus = "yes";
+                            horizontalSeekBarVol.IsClickable = true;
+                            horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected;
+                            openView.selectedIconBtn.Visible = true;
+                            closeView.selectedIconBtn.Visible = false;
+                            horizontalSeekBarVol.Progress = Progressvalue;
+                            Send.dictionary(switchdictionary, "Data1", "5");
+                            Send.dictionary(switchdictionary, "Data2", horizontalSeekBarVol.Progress.ToString());
+
+                        };
+                        ///鍙栨秷浜嬩欢
+                        closeView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SelectedDeviceStatus = "yes";
+                            horizontalSeekBarVol.IsClickable = false;
+                            horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor;
+                            openView.selectedIconBtn.Visible = false;
+                            closeView.selectedIconBtn.Visible = true;
+                            Send.dictionary(switchdictionary, "Data2", "0");
+                            Send.dictionary(switchdictionary, "Data1", "1");//榛樿鍊�
+
+                        };
+
+                        if (edit && TaskList != null)
+                        {
+                            foreach (var value in TaskList)
+                            {
+                                if (value["TaskType"] == "6")
+                                {
+                                    if (value["Data1"] == "5")
+                                    {
+
+                                        Send.dictionary(switchdictionary, "Data1", "5");
+                                        Send.dictionary(switchdictionary, "Data2", value["Data2"]);
+                                        horizontalSeekBarVol.IsClickable = true;
+                                        horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected;
+                                        openView.selectedIconBtn.Visible = true;
+                                        closeView.selectedIconBtn.Visible = false;
+                                        horizontalSeekBarVol.Progress = int.Parse(value["Data2"]);
+                                        Progressvalue = horizontalSeekBarVol.Progress;
+                                    }
+                                    else if (value["Data1"] == "1")
+                                    {
+                                        Send.dictionary(switchdictionary, "Data1", "1");
+                                        openView.selectedIconBtn.Visible = false;
+                                        closeView.selectedIconBtn.Visible = true;
+                                        horizontalSeekBarVol.IsClickable = false;
+                                        horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor;
+                                    }
+
+                                }
+
+                            }
+                        }
+                    }
+                    break;
+                ///绌烘皵寮�鍏�
+                case DeviceType.AirSwitch:
+                    {
+                        {
+                            l = 3;
+                            #region  ----鍒濆鍖栬澶囧姛鑳芥暟鎹�----
+                            Dictionary<string, string> switchdictionary = new Dictionary<string, string>();
+                            Send.dictionary(switchdictionary, "TaskType", "1");
+                            Send.dictionary(switchdictionary, "Data1", "0");
+                            Send.dictionary(switchdictionary, "Data2", "0");
+                            taskListInfo.Add(switchdictionary);
+                            #endregion
+
+                            #region  绌烘皵鐏厜View
+
+                            completeView.Show(l).AddChidren(openView.Show());
+                            completeView.Show(l).AddChidren(closeView.Show());
+                            completeView.Show(l).AddChidren(takebackView.Show());
+                            takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+
+                            #endregion
+
+                            ///纭浜嬩欢
+                            openView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                            {
+                                SelectedDeviceStatus = "yes";
+                                openView.selectedIconBtn.Visible = true;
+                                closeView.selectedIconBtn.Visible = false;
+                                takebackView.selectedIconBtn.Visible = false;
+                                Send.dictionary(switchdictionary, "Data1", "1");
+
+                            };
+                            ///鍙栨秷浜嬩欢
+                            closeView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                            {
+                                SelectedDeviceStatus = "yes";
+                                openView.selectedIconBtn.Visible = false;
+                                closeView.selectedIconBtn.Visible = true;
+                                takebackView.selectedIconBtn.Visible = false;
+                                Send.dictionary(switchdictionary, "Data1", "0");
+
+                            };
+                            //鍙栧弽
+                            takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                            {
+                                SelectedDeviceStatus = "yes";
+                                openView.selectedIconBtn.Visible = false;
+                                closeView.selectedIconBtn.Visible = false;
+                                takebackView.selectedIconBtn.Visible = true;
+                                Send.dictionary(switchdictionary, "Data1", "2");
+
+                            };
+
+                            if (edit && TaskList != null)
+                            {
+                                foreach (var value in TaskList)
+                                {
+                                    if (value["TaskType"] == "1")
+                                    {
+                                        var data1 = value["Data1"];
+                                        Send.dictionary(switchdictionary, "Data1", data1);
+                                        openView.selectedIconBtn.Visible = false;
+                                        closeView.selectedIconBtn.Visible = false;
+                                        takebackView.selectedIconBtn.Visible = false;
+                                        if (data1 == "1")
+                                        {
+                                            openView.selectedIconBtn.Visible = true;
+                                        }
+                                        else if (data1 == "0")
+                                        {
+                                            closeView.selectedIconBtn.Visible = true;
+                                        }
+                                        else if (data1 == "2")
+                                        {
+                                            takebackView.selectedIconBtn.Visible = true;
+                                        }
+                                        break;
+                                    }
+
+                                }
+                            }
+
+                        }
+                    }
+                    break;
+                ///绌鸿皟
+                case DeviceType.Thermostat:
+                    {
+                        l = 6;
+                        #region  ----鍒濆鍖栬澶囧姛鑳芥暟鎹�----
+                        var temperaturedictionary = new Dictionary<string, string>();
+                        var modedictionary = new Dictionary<string, string>();
+                        var speeddictionary = new Dictionary<string, string>();
+                        Send.dictionary(temperaturedictionary, "TaskType", "5");
+                        Send.dictionary(modedictionary, "TaskType", "5");
+                        Send.dictionary(modedictionary, "Data1", "3");
+                        Send.dictionary(speeddictionary, "TaskType", "5");
+                        Send.dictionary(speeddictionary, "Data1", "6");
+                        taskListInfo.Add(temperaturedictionary);
+                        taskListInfo.Add(modedictionary);
+                        taskListInfo.Add(speeddictionary);
+                        #endregion
+                        #region  绌鸿皟View
+
+                        completeView.Show(l).AddChidren(openView.Show());
+
+                        #region  绌鸿皟鐘舵�乂iew
+                        var PickerViewfra = new FrameLayout
+                        {
+                            Y = openView.frameLayout.Bottom,
+                            Height = Application.GetRealHeight(640),
+                        };
+                        completeView.Show(l).AddChidren(PickerViewfra);
+
+                        //閬尅绌鸿皟婊戝姩view锛�
+                        var pausePickerViewfra = new FrameLayout
+                        {
+                            Y = openView.frameLayout.Bottom,
+                            Height = Application.GetRealHeight(640),
+                            BackgroundColor = 0x60ffffff,
+                        };
+                        completeView.Show(l).AddChidren(pausePickerViewfra);
+
+                        var mUIPickerView = new UIPickerView
+                        {
+                            Height = Application.GetRealHeight(640 - 5),
+                        };
+                        PickerViewfra.AddChidren(mUIPickerView);
+                        var line = new Button
+                        {
+                            Y = Application.GetRealHeight(640 - 5),
+                            Width = Application.GetRealWidth(920),
+                            Height = Application.GetRealHeight(5),
+                            X = Application.GetRealWidth(80),
+                            BackgroundColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
+                        };
+                        PickerViewfra.AddChidren(line);
+
+                        var mList1 = new List<string>();
+                        var mList2 = new List<string> {
+                         Language.StringByID(MyInternationalizationString.logiccool),
+                         Language.StringByID(MyInternationalizationString.logicheat),
+                         Language.StringByID(MyInternationalizationString.logicauto),
+                         Language.StringByID(MyInternationalizationString.logicdry),
+                         Language.StringByID(MyInternationalizationString.logicfanonly),
+                        };
+                        var mList3 = new List<string>{
+                         Language.StringByID(MyInternationalizationString.logiclow),
+                         Language.StringByID(MyInternationalizationString.logicmedium),
+                         Language.StringByID(MyInternationalizationString.logichigh),
+                          };
+                        for (int i = 16; i < 33; i++)
+                        {
+                            mList1.Add(i.ToString() + " " + "鈩�");
+                        }
+                        mUIPickerView.setNPicker(mList1, mList2, mList3);
+                        ///榛樿鐘舵��
+
+
+                        #endregion
+
+                        closeView.frameLayout.Y = PickerViewfra.Bottom;
+                        completeView.Show(l).AddChidren(closeView.Show());
+                        closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+
+                        //榛樿26,鑷姩,涓
+                        int indextemperature = 10, indexmode = 2, indexspeed = 1;
+                        mUIPickerView.OnSelectChangeEvent += (s1, s2, s3) =>
+                        {
+                            indextemperature = s1;
+                            indexmode = s2;
+                            indexspeed = s3;
+                            if (openView.selectedIconBtn.Visible)
+                            {
+                                SelectedDeviceStatus = "yes";
+                                var temperature = mList1[s1].Split(' ')[0];
+                                var modestring = mList2[s2].Split(' ')[0];
+                                var speedstring = mList3[s3].Split(' ')[0];
+                                ModeState(modestring, temperaturedictionary, modedictionary);
+                                var a = int.Parse(temperature) * 100;
+                                Send.dictionary(temperaturedictionary, "Data2", a.ToString());
+
+                                SpeedState(speedstring, speeddictionary);
+                            }
+                        };
+                        mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 0);
+                        mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 1);
+                        mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 2);
+                        #endregion
+
+                        if (edit && TaskList != null)
+                        {
+
+                            foreach (var value in TaskList)
+                            {
+                                if (TaskList.Count == 1)
+                                {
+                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 0);
+                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 1);
+                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 2);
+                                    //鏁扮粍鍙湁涓�涓厓绱犺鏄庡綋鍓嶇┖璋冪姸鎬佷负鍏筹紱
+                                    openView.selectedIconBtn.Visible = false;
+                                    closeView.selectedIconBtn.Visible = true;
+                                    pausePickerViewfra.Height = Application.GetRealHeight(600);
+                                    //濡傛灉绌鸿皟鐘舵�佹槸鍏筹紱鐩存帴璺冲嚭for寰潖锛�
+                                    break;
+
+                                }
+                                else
+                                {
+                                    openView.selectedIconBtn.Visible = true;
+                                    closeView.selectedIconBtn.Visible = false;
+                                    pausePickerViewfra.Height = Application.GetRealHeight(0);
+                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 0);
+                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 1);
+                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 2);
+                                }
+
+
+                                if (value["TaskType"] == "5")
+                                {
+                                    if (value["Data1"] == "3")
+                                    {//3---璁剧疆宸ヤ綔妯″紡(1:鑷姩;3:鍒跺喎;4:鍒剁儹;7:閫侀;8:闄ゆ箍)
+                                        Send.dictionary(modedictionary, "Data2", value["Data2"]);
+                                        string modetext = "";
+                                        switch (value["Data2"])
+                                        {
+                                            case "3":
+                                                {
+                                                    modetext = Language.StringByID(MyInternationalizationString.logiccool);
+                                                    //indexmode = 0;
+                                                }
+                                                break;
+                                            case "4":
+                                                {
+                                                    modetext = Language.StringByID(MyInternationalizationString.logicheat);
+                                                    //  indexmode = 1;
+                                                }
+                                                break;
+                                            case "1":
+                                                {
+                                                    modetext = Language.StringByID(MyInternationalizationString.logicauto);
+                                                    //   indexmode = 2;
+                                                }
+                                                break;
+                                            case "8":
+                                                {
+                                                    modetext = Language.StringByID(MyInternationalizationString.logicdry);
+                                                    //  indexmode = 3;
+                                                }
+                                                break;
+                                            case "7":
+                                                {
+                                                    modetext = Language.StringByID(MyInternationalizationString.logicfanonly);
+                                                    //indexmode = 4;
+                                                }
+                                                break;
+                                        }
+                                        indexmode = mList2.IndexOf(modetext);
+                                    }
+                                    else if (value["Data1"] == "6")
+                                    {//6---璁剧疆椋庢墖妯″紡(1:浣庨;2:涓;3:楂橀;)
+                                        Send.dictionary(speeddictionary, "Data2", value["Data2"]);
+                                        string speedtext = "";
+                                        switch (value["Data2"])
+                                        {
+                                            case "1":
+                                                {
+                                                    speedtext = Language.StringByID(MyInternationalizationString.logiclow);
+                                                    //indexspeed = 0;
+                                                }
+                                                break;
+
+                                            case "2":
+                                                {
+                                                    speedtext = Language.StringByID(MyInternationalizationString.logicmedium);
+                                                    // indexspeed = 1;
+                                                }
+                                                break;
+                                            case "3":
+                                                {
+                                                    speedtext = Language.StringByID(MyInternationalizationString.logichigh);
+                                                    // indexspeed = 2;
+                                                }
+                                                break;
+
+                                        }
+                                        indexspeed = mList3.IndexOf(speedtext);
+                                    }
+                                    //4-璁剧疆鍔犵儹搴︽暟;5-璁剧疆鍒跺喎銆侀櫎婀垮害鏁�;7-璁剧疆鑷姩搴︽暟
+                                    else if (value["Data1"] == "4" || value["Data1"] == "5" || value["Data1"] == "7")
+                                    {
+                                        var s = int.Parse(value["Data2"]) / 100;
+                                        indextemperature = mList1.IndexOf(s.ToString() + " " + "鈩�");
+                                        Send.dictionary(temperaturedictionary, "Data1", value["Data1"]);
+                                        Send.dictionary(temperaturedictionary, "Data2", value["Data2"]);
+                                    }
+
+                                }
+                            }
+                        }
+                        ///鏇存柊鏈�鏂扮┖璋冪姸鎬侊紱
+                        mUIPickerView.setCurrentItems(indextemperature, indexmode, indexspeed);
+                        ///纭浜嬩欢
+                        openView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                        {
+                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 0);
+                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 1);
+                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 2);
+                            mUIPickerView.setCurrentItems(indextemperature, indexmode, indexspeed);
+                            pausePickerViewfra.Height = Application.GetRealHeight(0);
+                            SelectedDeviceStatus = "yes";
+                            openView.selectedIconBtn.Visible = true;
+                            closeView.selectedIconBtn.Visible = false;
+                            //娓呴櫎涔嬪墠鏁版嵁锛�
+                            taskListInfo.Clear();
+                            //鍔犺浇鏂版暟鎹紱
+                            Send.dictionary(temperaturedictionary, "TaskType", "5");
+                            Send.dictionary(modedictionary, "TaskType", "5");
+                            Send.dictionary(modedictionary, "Data1", "3");
+                            Send.dictionary(speeddictionary, "TaskType", "5");
+                            Send.dictionary(speeddictionary, "Data1", "6");
+                            taskListInfo.Add(temperaturedictionary);
+                            taskListInfo.Add(modedictionary);
+                            taskListInfo.Add(speeddictionary);
+
+                            var temperature = mList1[indextemperature].Split(' ')[0];
+                            var modestring = mList2[indexmode].Split(' ')[0];
+                            var speedstring = mList3[indexspeed].Split(' ')[0];
+
+                            ModeState(modestring, temperaturedictionary, modedictionary);
+                            var a = int.Parse(temperature) * 100;
+                            Send.dictionary(temperaturedictionary, "Data2", a.ToString());
+                            SpeedState(speedstring, speeddictionary);
+
+                        };
+                        ///鍙栨秷浜嬩欢
+                        closeView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                        {
+                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 0);
+                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 1);
+                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 2);
+                            mUIPickerView.setCurrentItems(indextemperature, indexmode, indexspeed);
+                            //娓呴櫎涔嬪墠鏁版嵁锛�
+                            taskListInfo.Clear();
+                            Send.dictionary(modedictionary, "TaskType", "5");
+                            Send.dictionary(modedictionary, "Data1", "3");
+                            Send.dictionary(modedictionary, "Data2", "0");
+                            //鍔犺浇鏂版暟鎹紱
+                            taskListInfo.Add(modedictionary);
+                            pausePickerViewfra.Height = Application.GetRealHeight(600);
+                            SelectedDeviceStatus = "yes";
+                            openView.selectedIconBtn.Visible = false;
+                            closeView.selectedIconBtn.Visible = true;
+
+                        };
+                    }
+                    break;
+                case DeviceType.ColorTemperatureLight: {
+                        flMain.RemoveFromParent();
+                        var nightlight = new Nightlight();
+                        UserView.HomePage.Instance.AddChidren(nightlight);
+                        UserView.HomePage.Instance.PageIndex += 1;
+                        if (edit)
+                        {
+                            nightlight.Show(common, edit, _if[1], Common.Logic.CurrentLogic.Actions[intValue]);
+                        }
+                        else
+                        {
+                            nightlight.Show(common, edit, _if[1]);
+                        }
+                        
+                    }
+                    break;
+            }
+            completeView.Btncomplete.MouseUpEventHandler += (sender, e) =>
+            {
+                //UserView.HomePage.Instance.ScrollEnabled = true;
+                if (SelectedDeviceStatus != "")
+                {
+                    if (_if[0] == "condition")
+                    {   //娣诲姞鏉′欢
+                        LogicIfon.AddDeviceconditions(common, deviceConditionsInfo);
+                    }
+                    else
+                    {   //娣诲姞鐩爣
+                        if (SelectedDeviceStatus == "DoorLock")
+                        {//闂ㄩ攣鏁版嵁鐗规畩,杩涜鐗规畩澶勭悊;
+                            LogicIfon.AddDoorLockActions(common, actionsInfo);
+                        }
+                        else
+                        {
+                            LogicIfon.AddDeviceActions(common, actionsInfo);
+                        }
+                    }
+                }
+                else
+                {
+                    if (!edit)
+                    {
+                        var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal,
+                                    Language.StringByID(MyInternationalizationString.selectdevicestatuscondition),
+                                   Language.StringByID(MyInternationalizationString.confrim));
+                        alert.Show();
+                        return;
+                    }
+
+                }
+                flMain.RemoveFromParent();
+                switch (_if[1])
+                {
+                    case "logic":
+                        {
+                            //鑷姩鍖�
+                            var logicCommunalPage = new LogicCommunalPage();
+                            UserView.HomePage.Instance.AddChidren(logicCommunalPage);
+                            UserView.HomePage.Instance.PageIndex += 1;
+                            logicCommunalPage.Show(() => { });
+                        }
+                        break;
+                    case "mould":
+                        {
+                            //鑷姩鍖栨帹鑽愭ā鏉�
+                            var templatePage = new TemplatePage();
+                            UserView.HomePage.Instance.AddChidren(templatePage);
+                            UserView.HomePage.Instance.PageIndex += 1;
+                            templatePage.Show();
+                        }
+                        break;
+                    case "lockaction":
+                        {
+                            //闂ㄩ攣鑱斿姩浜嬩欢
+                            var lockLogicCommunalPage = new DoorLockLogic.LockLogicCommunalPage();
+                            UserView.HomePage.Instance.AddChidren(lockLogicCommunalPage);
+                            UserView.HomePage.Instance.PageIndex += 1;
+                            lockLogicCommunalPage.Show(() => { });
+                        }
+                        break;
+                }
+                
+
+            };
+        }
+
+        /// <summary>
+        /// 绌鸿皟妯″紡鐨勭姸鎬�
+        /// </summary>
+        /// <param name="modestring"></param>
+        /// <param name="temperaturedictionary"></param>
+        /// <param name="modedictionary"></param>
+        public static void ModeState(string modestring, Dictionary<string, string> temperaturedictionary, Dictionary<string, string> modedictionary)
+        {
+
+            if (modestring == Language.StringByID(MyInternationalizationString.logiccool))
+            {
+                Send.dictionary(modedictionary, "Data2", "3");
+                Send.dictionary(temperaturedictionary, "Data1", "5");
+            }
+            else if (modestring == Language.StringByID(MyInternationalizationString.logicheat))
+            {
+
+                Send.dictionary(modedictionary, "Data2", "4");
+                Send.dictionary(temperaturedictionary, "Data1", "4");
+            }
+            else if (modestring == Language.StringByID(MyInternationalizationString.logicauto))
+            {
+
+                Send.dictionary(modedictionary, "Data2", "1");
+                Send.dictionary(temperaturedictionary, "Data1", "7");
+            }
+            else if (modestring == Language.StringByID(MyInternationalizationString.logicdry))
+            {
+
+                Send.dictionary(modedictionary, "Data2", "8");
+                Send.dictionary(temperaturedictionary, "Data1", "5");
+            }
+            else if (modestring == Language.StringByID(MyInternationalizationString.logicfanonly))
+            {
+                Send.dictionary(temperaturedictionary, "Data1", "20");
+                Send.dictionary(modedictionary, "Data2", "7");
+            }
+
+        }
+        /// <summary>
+        /// 椋庨�熺殑妯″紡
+        /// </summary>
+        /// <param name="speedstring"></param>
+        /// <param name="speeddictionary"></param>
+        public static void SpeedState(string speedstring, Dictionary<string, string> speeddictionary)
+        {
+
+            if (speedstring == Language.StringByID(MyInternationalizationString.logiclow))
+            {
+
+                Send.dictionary(speeddictionary, "Data2", "1");
+
+            }
+            else if (speedstring == Language.StringByID(MyInternationalizationString.logicmedium))
+            {
+
+                Send.dictionary(speeddictionary, "Data2", "2");
+
+            }
+            else if (speedstring == Language.StringByID(MyInternationalizationString.logichigh))
+            {
+
+                Send.dictionary(speeddictionary, "Data2", "3");
+            }
+
+        }
+    }
+}

--
Gitblit v1.8.0