From 9c16d3614d9b88c637f967518a329f239fcd3aaf Mon Sep 17 00:00:00 2001
From: lss <316519258@qq.com>
Date: 星期五, 12 六月 2020 09:22:04 +0800
Subject: [PATCH] 2020.06.12

---
 ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/DeviceControls/DeviceObjectControl.cs |   60 +++++++++++++++++++++++++++++++-----------------------------
 1 files changed, 31 insertions(+), 29 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/DeviceControls/DeviceObjectControl.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/DeviceControls/DeviceObjectControl.cs
index 127b3ac..5609b22 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/DeviceControls/DeviceObjectControl.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/DeviceControls/DeviceObjectControl.cs
@@ -20,24 +20,27 @@
         /// </summary>
         private bool hadRefresh = false;
         /// <summary>
-        /// 鍦ㄧ嚎鐘舵��
-        /// </summary>
-        private bool m_isOnline = false;
-        /// <summary>
         /// 浼犳劅鍣ㄦ帹閫佷腑
         /// </summary>
         private bool sensorPushing = false;
         /// <summary>
         /// 鍦ㄧ嚎鐘舵��
         /// </summary>
-        public bool isOnline
+        private bool m_isOnline = true;
+        /// <summary>
+        /// 鍦ㄧ嚎鐘舵��
+        /// </summary>
+        public bool IsOnline
         {
             get { return m_isOnline; }
             set
             {
-                m_isOnline = value;
-                //璁剧疆鍦ㄧ嚎鐘舵�佺殑鐗规晥
-                this.SetOnlineStatu(m_isOnline);
+                if (m_isOnline != value)
+                {
+                    m_isOnline = value;
+                    //璁剧疆鍦ㄧ嚎鐘舵�佺殑鐗规晥
+                    this.SetOnlineStatu(m_isOnline);
+                }
             }
         }
 
@@ -62,7 +65,7 @@
         /// 鍋氭垚涓�涓樉绀鸿澶囩被鍨�+璁惧MAC澶囨敞鐨凴owLayout
         /// </summary>
         /// <param name="i_deviceMac">璁惧鐨凪ac鍦板潃</param>
-        /// <param name="i_ChidrenYaxis">瀛愭帶浠禮杞村亸绉婚噺(鐪熷疄鍊�,鏈変簺鐣岄潰闇�瑕佽繖绉嶇壒娈婃搷浣�)</param>
+        /// <param name="i_ChidrenYaxis">瀛愭帶浠禮杞村亸绉婚噺(銆愬垪琛ㄦ帶浠剁殑rowSpace/2銆戝嵆鍙�,涓嶆噦榛樿涓�0鍗冲彲)</param>
         public DeviceObjectControl(string i_deviceMac, int i_ChidrenYaxis = 0) : base(i_ChidrenYaxis)
         {
             this.deviceMac = i_deviceMac;
@@ -74,33 +77,29 @@
         public void InitControl()
         {
             var listDevice = Common.LocalDevice.Current.GetDevicesByMac(this.deviceMac);
+            if (listDevice.Count == 0)
+            {
+                //閽堝鍗曠函鍙湁涓�涓�200绔偣鐨勮澶�
+                listDevice.Add(Common.LocalDevice.Current.GetOTADevice(this.deviceMac));
+            }
             //鍥炬爣
             btnIcon = frameTable.AddLeftIcon(81);
-            Common.LocalDevice.Current.SetDeviceBeloneIconToControl(btnIcon, listDevice);
+            Common.LocalDevice.Current.SetDeviceObjectIconToControl(btnIcon, listDevice);
 
             //璁惧
             string deviceName = Common.LocalDevice.Current.GetDeviceMacName(listDevice[0]);
-            btnDeviceName = frameTable.AddLeftCaption(deviceName, 800, 60, true);
-            btnDeviceName.TextSize = 15;
-            //杩欎釜鍧愭爣鏈夌偣鐗规畩
-            btnDeviceName.Y = Application.GetRealHeight(12) + this.chidrenYaxis;
-            btnDeviceName.Text = Common.LocalDevice.Current.GetDeviceObjectText(listDevice);
-            frameTable.AddChidren(btnDeviceName, ChidrenBindMode.BindEventOnly);
+            btnDeviceName = frameTable.AddTopView(deviceName, 800);
+            frameTable.AddChidren(btnDeviceName, ChidrenBindMode.BindEvent);
 
             //鎴块棿
             string roomName = Common.LocalDevice.Current.GeteRealDeviceRoomName(listDevice[0]);
-            btnDeviceRoom = frameTable.AddLeftCaption(roomName, 800, 49, true);
-            //杩欎釜鍧愭爣鏈夌偣鐗规畩
-            btnDeviceRoom.Y = Application.GetRealHeight(72) + this.chidrenYaxis;
-            btnDeviceRoom.TextSize = 12;
-            btnDeviceRoom.TextColor = UserCenterColor.Current.TextGrayColor1;
-            frameTable.AddChidren(btnDeviceRoom, ChidrenBindMode.BindEventOnly);
+            btnDeviceRoom = frameTable.AddBottomView(roomName, 800);
 
             //搴曠嚎
             frameTable.AddBottomLine();
 
             //璁剧疆鍦ㄧ嚎鐘舵�佺殑鐗规晥
-            this.isOnline = listDevice[0].IsOnline == 1;
+            this.IsOnline = Common.LocalDevice.Current.CheckDeviceIsOnline(listDevice[0]);
         }
 
         #endregion
@@ -110,10 +109,10 @@
         /// <summary>
         /// 璁剧疆鍦ㄧ嚎鐘舵�佺殑鐗规晥
         /// </summary>
-        /// <param name="isOnline"></param>
-        private void SetOnlineStatu(bool isOnline)
+        /// <param name="i_isOnline"></param>
+        private void SetOnlineStatu(bool i_isOnline)
         {
-            if (isOnline == false)
+            if (i_isOnline == false)
             {
                 btnDeviceName.TextColor = UserCenterColor.Current.TextGrayColor1;
             }
@@ -136,14 +135,17 @@
             hadRefresh = true;
 
             var listDevice = Common.LocalDevice.Current.GetDevicesByMac(this.deviceMac);
+            if (listDevice.Count == 0)
+            {
+                //閽堝鍗曠函鍙湁涓�涓�200绔偣鐨勮澶�
+                listDevice.Add(Common.LocalDevice.Current.GetOTADevice(this.deviceMac));
+            }
             //鍥炬爣
-            Common.LocalDevice.Current.SetDeviceBeloneIconToControl(btnIcon, listDevice);
+            Common.LocalDevice.Current.SetDeviceObjectIconToControl(btnIcon, listDevice);
             //璁惧
             btnDeviceName.Text = Common.LocalDevice.Current.GetDeviceMacName(listDevice[0]);
             //璁惧鎴块棿
             btnDeviceRoom.Text = Common.LocalDevice.Current.GeteRealDeviceRoomName(listDevice[0]);
-            //璁剧疆鍦ㄧ嚎鐘舵�佺殑鐗规晥
-            this.isOnline = listDevice[0].IsOnline == 1;
         }
 
 

--
Gitblit v1.8.0