From f1c3921b08bb22ac6f5db22d620e01d7e8e5c49f Mon Sep 17 00:00:00 2001
From: WJC <wjc@hdlchina.com.cn>
Date: 星期一, 30 十二月 2019 13:32:33 +0800
Subject: [PATCH] 2019-12-30-1

---
 ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/AddCondition.cs |  257 +++++++++++++++++++++++++++++++++++---------------
 1 files changed, 178 insertions(+), 79 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/AddCondition.cs b/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/AddCondition.cs
index f1a9a25..117357f 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/AddCondition.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/AddCondition.cs
@@ -114,25 +114,27 @@
                 }
             }
             CommonPage.Loading.Start();
-            if (!d)
+            middle.RemoveAll();
+            System.Threading.Tasks.Task.Run(async () =>
             {
-
-                CommonPage.Loading.Start();
-                new System.Threading.Thread(async () =>
+                try
                 {
-                    var allMemberslist = await Send.AllMembers(macport);
-                    Send.LockList.AddRange(allMemberslist);
+                    if (!d)
+                    {
+                        var allMemberslist = await Send.AllMembers(macport);
+                        Send.LockList.AddRange(allMemberslist);
+                    }
+                }
+                catch { }
+                finally
+                {
                     Application.RunOnMainThread(() =>
                     {
                         CommonPage.Loading.Hide();
+                        UserAllView(macport);
                     });
-                })
-                { IsBackground = true }.Start();
-
-            }
-            UserAllView(macport);
-            CommonPage.Loading.Hide();
-
+                }
+            });
         }
         /// <summary>
         /// 鏄剧ず鎵�鏈夌敤鎴�
@@ -278,86 +280,183 @@
             };
             lockRow.AddChidren(Btncomplete);
             #endregion
-
+            bool @false = false;
+            if (membershipIfon.UserIdMode.Count > 10)
+            {
+                @false = false;//
+                lockcolorfra1.Y = Application.GetRealHeight(1920 - 140 - (160 * 10) - 20 - 50);
+                lockcolorfra1.Height = Application.GetRealHeight(140 + (160 * 10) + 20 + 50);
+            }
+            else
+            {
+                @false = false;
+                lockcolorfra1.Y = Application.GetRealHeight(1920 - 140 - (160 * membershipIfon.UserIdMode.Count) - 20 - 50);
+                lockcolorfra1.Height = Application.GetRealHeight(140 + (160 * membershipIfon.UserIdMode.Count) + 20 + 50);
+            }
             string SelectedLockStatus = "";
-            lockcolorfra1.Y = Application.GetRealHeight(1920 - 140 - (160 * membershipIfon.UserIdMode.Count) - 20 - 50);
-            lockcolorfra1.Height = Application.GetRealHeight(140 + (160 * membershipIfon.UserIdMode.Count) + 20 + 50);
             ///瀹氫箟涓や釜鍙橀噺璁板綍閫変腑鐘舵�侊紱
             string attriButeId = "";
             string attriButeData2 = "";
             string modeName = "";
-            for (int j = 0; j < membershipIfon.UserIdMode.Count; j++)
+            if (!@false)
             {
-                var userIdmode = membershipIfon.UserIdMode[j];
-                var doorlockfra = new FrameLayout
+                for (int j = 0; j < membershipIfon.UserIdMode.Count; j++)
                 {
-                    Height = Application.GetRealHeight(160),
-                    Y = lockRow.Bottom + Application.GetRealHeight(20 + 160 * j),
-                };
-                lockcolorfra1.AddChidren(doorlockfra);
-
-                var doorlockRow = new RowLayout
-                {
-                    Y = Application.GetRealHeight(30),
-                    Width = Application.GetRealWidth(920),
-                    Height = Application.GetRealHeight(130),
-                    X = Application.GetRealWidth(80),
-                    LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
-                };
-                doorlockfra.AddChidren(doorlockRow);
-
-                var doorlockBtn = new Button
-                {
-                    Width = Application.GetRealWidth(600),
-                    TextAlignment = TextAlignment.CenterLeft,
-                    TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
-                    Text = userIdmode.ModeName,
-                    TextSize = 14,
-                };
-                doorlockRow.AddChidren(doorlockBtn);
-
-                var doorlockSelected = new Button
-                {
-                    X = Application.GetRealWidth(860),
-                    Width = Application.GetMinRealAverage(60),
-                    Height = Application.GetMinRealAverage(60),
-                    UnSelectedImagePath = "ZigeeLogic/selected.png",
-                    Visible = false,
-                    Gravity = Gravity.CenterVertical,
-
-                };
-                doorlockRow.AddChidren(doorlockSelected);
-                if ((membershipIfon.UserIdMode.Count - 1) == j)
-                {
-                    doorlockRow.LineColor = ZigbeeColor.Current.LogicBackgroundColor;
-                }
-                EventHandler<MouseEventArgs> doorlockclick = (sender2, e2) =>
-                {
-                    SelectedLockStatus = "DoorLock";
-                    selectedIcon.Visible = false;
-                    selectedIcon = doorlockSelected;
-                    doorlockSelected.Visible = true;
-                    //doorlockBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
-                    attriButeId = userIdmode.OpenMode.ToString();
-                    attriButeData2 = userIdmode.UserId;
-                    modeName = userIdmode.ModeName;
-                };
-                doorlockRow.MouseUpEventHandler += doorlockclick;
-                doorlockBtn.MouseUpEventHandler += doorlockclick;
-                doorlockSelected.MouseUpEventHandler += doorlockclick;
-                doorlockfra.MouseUpEventHandler += doorlockclick;
-                ///鏄剧ず涔嬪墠鐨勭姸鎬�
-                if (conditionsIndex != -1)
-                {
-                    var s = Common.Logic.CurrentLogic.Conditions[conditionsIndex];
-                    if (s["AttriButeId"] == userIdmode.OpenMode.ToString() && s["AttriButeData2"] == userIdmode.UserId)
+                    var userIdmode = membershipIfon.UserIdMode[j];
+                    var doorlockfra = new FrameLayout
                     {
+                        Height = Application.GetRealHeight(160),
+                        Y = lockRow.Bottom + Application.GetRealHeight(20 + 160 * j),
+                    };
+                    lockcolorfra1.AddChidren(doorlockfra);
+
+                    var doorlockRow = new RowLayout
+                    {
+                        Y = Application.GetRealHeight(30),
+                        Width = Application.GetRealWidth(920),
+                        Height = Application.GetRealHeight(130),
+                        X = Application.GetRealWidth(80),
+                        LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
+                    };
+                    doorlockfra.AddChidren(doorlockRow);
+
+                    var doorlockBtn = new Button
+                    {
+                        Width = Application.GetRealWidth(600),
+                        TextAlignment = TextAlignment.CenterLeft,
+                        TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
+                        Text = userIdmode.ModeName,
+                        TextSize = 14,
+                    };
+                    doorlockRow.AddChidren(doorlockBtn);
+
+                    var doorlockSelected = new Button
+                    {
+                        X = Application.GetRealWidth(860),
+                        Width = Application.GetMinRealAverage(60),
+                        Height = Application.GetMinRealAverage(60),
+                        UnSelectedImagePath = "ZigeeLogic/selected.png",
+                        Visible = false,
+                        Gravity = Gravity.CenterVertical,
+
+                    };
+                    doorlockRow.AddChidren(doorlockSelected);
+                    if ((membershipIfon.UserIdMode.Count - 1) == j)
+                    {
+                        doorlockRow.LineColor = ZigbeeColor.Current.LogicBackgroundColor;
+                    }
+                    EventHandler<MouseEventArgs> doorlockclick = (sender2, e2) =>
+                    {
+                        SelectedLockStatus = "DoorLock";
                         selectedIcon.Visible = false;
                         selectedIcon = doorlockSelected;
                         doorlockSelected.Visible = true;
+                    //doorlockBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                    attriButeId = userIdmode.OpenMode.ToString();
+                        attriButeData2 = userIdmode.UserId;
+                        modeName = userIdmode.ModeName;
+                    };
+                    doorlockRow.MouseUpEventHandler += doorlockclick;
+                    doorlockBtn.MouseUpEventHandler += doorlockclick;
+                    doorlockSelected.MouseUpEventHandler += doorlockclick;
+                    doorlockfra.MouseUpEventHandler += doorlockclick;
+                    ///鏄剧ず涔嬪墠鐨勭姸鎬�
+                    if (conditionsIndex != -1)
+                    {
+                        var s = Common.Logic.CurrentLogic.Conditions[conditionsIndex];
+                        if (s["AttriButeId"] == userIdmode.OpenMode.ToString() && s["AttriButeData2"] == userIdmode.UserId)
+                        {
+                            selectedIcon.Visible = false;
+                            selectedIcon = doorlockSelected;
+                            doorlockSelected.Visible = true;
+                        }
+
+
                     }
+                }
+            }
+            else
+            {
+                for (int j = 0; j < membershipIfon.UserIdMode.Count; j++)
+                {
+                    var userIdmode = membershipIfon.UserIdMode[j];
+
+                    var vv = new VerticalScrolViewLayout
+                    {
+                        Height = Application.GetRealHeight(160 * 8),
+                        Y = lockRow.Bottom,
+                    };
+                    lockcolorfra1.AddChidren(vv);
+                    var doorlockfra = new FrameLayout
+                    {
+                        Height = Application.GetRealHeight(160),
+                        Y = Application.GetRealHeight(160 * j),
+                    };
+                    vv.AddChidren(doorlockfra);
+
+                    var doorlockRow = new RowLayout
+                    {
+                        Y = Application.GetRealHeight(30),
+                        Width = Application.GetRealWidth(920),
+                        Height = Application.GetRealHeight(130),
+                        X = Application.GetRealWidth(80),
+                        LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
+                    };
+                    doorlockfra.AddChidren(doorlockRow);
+
+                    var doorlockBtn = new Button
+                    {
+                        Width = Application.GetRealWidth(600),
+                        TextAlignment = TextAlignment.CenterLeft,
+                        TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
+                        Text = userIdmode.ModeName,
+                        TextSize = 14,
+                    };
+                    doorlockRow.AddChidren(doorlockBtn);
+
+                    var doorlockSelected = new Button
+                    {
+                        X = Application.GetRealWidth(860),
+                        Width = Application.GetMinRealAverage(60),
+                        Height = Application.GetMinRealAverage(60),
+                        UnSelectedImagePath = "ZigeeLogic/selected.png",
+                        Visible = false,
+                        Gravity = Gravity.CenterVertical,
+
+                    };
+                    doorlockRow.AddChidren(doorlockSelected);
+                    if ((membershipIfon.UserIdMode.Count - 1) == j)
+                    {
+                        doorlockRow.LineColor = ZigbeeColor.Current.LogicBackgroundColor;
+                    }
+                    EventHandler<MouseEventArgs> doorlockclick = (sender2, e2) =>
+                    {
+                        SelectedLockStatus = "DoorLock";
+                        selectedIcon.Visible = false;
+                        selectedIcon = doorlockSelected;
+                        doorlockSelected.Visible = true;
+                    //doorlockBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                    attriButeId = userIdmode.OpenMode.ToString();
+                        attriButeData2 = userIdmode.UserId;
+                        modeName = userIdmode.ModeName;
+                    };
+                    doorlockRow.MouseUpEventHandler += doorlockclick;
+                    doorlockBtn.MouseUpEventHandler += doorlockclick;
+                    doorlockSelected.MouseUpEventHandler += doorlockclick;
+                    doorlockfra.MouseUpEventHandler += doorlockclick;
+                    ///鏄剧ず涔嬪墠鐨勭姸鎬�
+                    if (conditionsIndex != -1)
+                    {
+                        var s = Common.Logic.CurrentLogic.Conditions[conditionsIndex];
+                        if (s["AttriButeId"] == userIdmode.OpenMode.ToString() && s["AttriButeData2"] == userIdmode.UserId)
+                        {
+                            selectedIcon.Visible = false;
+                            selectedIcon = doorlockSelected;
+                            doorlockSelected.Visible = true;
+                        }
 
 
+                    }
                 }
             }
 

--
Gitblit v1.8.0