From d978b68da978982b35dd7d7da27217925cf8d788 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期三, 29 四月 2020 09:34:28 +0800 Subject: [PATCH] 完整版的虚拟设备功能 --- ZigbeeApp/Shared/Phone/MainPage/DeviceDetailInfoForm.cs | 138 ++++++---------------------------------------- 1 files changed, 18 insertions(+), 120 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/MainPage/DeviceDetailInfoForm.cs b/ZigbeeApp/Shared/Phone/MainPage/DeviceDetailInfoForm.cs index 3e38a1c..8bec1a6 100755 --- a/ZigbeeApp/Shared/Phone/MainPage/DeviceDetailInfoForm.cs +++ b/ZigbeeApp/Shared/Phone/MainPage/DeviceDetailInfoForm.cs @@ -272,105 +272,19 @@ /// </summary> private void AddFunctionTypeRowByAdmin(NormalViewControl btnBelongType) { - //濡傛灉鏄户鐢靛櫒,绌烘皵寮�鍏�,璋冨厜鍣ㄧ殑璇� - if (device.Type == DeviceType.OnOffOutput || device.Type == DeviceType.DimmableLight - || device.Type == DeviceType.ColorDimmableLight || device.Type == DeviceType.AirSwitch) + //鑷畾涔夊姛鑳界被鍨嬫帶浠� + var rowFunction = new DeviceFunctionTypeRowControl(device, listview.rowSpace / 2); + if (rowFunction.CanShowRow == true) { - //鍔熻兘绫诲瀷鐨勭炕璇戝悕瀛� - int nowSelectNo = 1; - string strType = string.Empty; - if (this.device.DfunctionType == DeviceFunctionType.A鐏厜) - { - strType = Language.StringByID(R.MyInternationalizationString.uLight); - nowSelectNo = 1; - } - else if (this.device.DfunctionType == DeviceFunctionType.A寮�鍏�) - { - strType = Language.StringByID(R.MyInternationalizationString.uSwitch); - nowSelectNo = 0; - } - else if (this.device.DfunctionType == DeviceFunctionType.A鎻掑骇) - { - strType = Language.StringByID(R.MyInternationalizationString.uSocket1); - nowSelectNo = 2; - } - //鍔熻兘绫诲瀷 - var btnFunction = new FrameCaptionViewControl(Language.StringByID(R.MyInternationalizationString.uFunctionType), strType, listview.rowSpace / 2); - btnFunction.UseClickStatu = false; - listview.AddChidren(btnFunction); - btnFunction.InitControl(); + listview.AddChidren(rowFunction); + rowFunction.InitControl(); //搴曠嚎 - btnFunction.AddBottomLine(); - //濡傛灉鏄┖姘斿紑鍏冲拰缁х數鍣�,鎵嶈兘淇敼 - if (device.Type == DeviceType.OnOffOutput || device.Type == DeviceType.AirSwitch) + rowFunction.AddBottomLine(); + rowFunction.FinishSelectEvent += (index) => { - //鍙崇澶� - btnFunction.AddRightArrow(); - btnFunction.ButtonClickEvent += (sender, e) => - { - //鏄剧ず鍒楄〃 - var listText = new List<string>(); - listText.Add(Language.StringByID(R.MyInternationalizationString.uSwitch));//寮�鍏� - listText.Add(Language.StringByID(R.MyInternationalizationString.uLight));//鐏厜 - listText.Add(Language.StringByID(R.MyInternationalizationString.uSocket1));//鎻掑骇 - //鏍囬:閫夋嫨鍔熻兘绫诲瀷 - var title = Language.StringByID(R.MyInternationalizationString.uSelectFunctionType); - - var form = new BottomItemSelectForm(); - form.SelectRowCanCancel = false;//閫夋嫨鐨勪笉鑳藉彇娑� - form.AddForm(title, listText, nowSelectNo); - form.FinishSelectEvent += (selectNo) => - { - btnFunction.Text = listText[selectNo]; - //褰撶被鍨嬪彉鏇存椂,澶翠笂鐨勭被鍨嬩篃涓�璧峰彉鏇� - btnBelongType.Text = listText[selectNo]; - nowSelectNo = selectNo; - //璁板綍璧峰綋鍓嶉�夋嫨鐨勫姛鑳界被鍨� - if (selectNo == 0) - { - this.device.DfunctionType = DeviceFunctionType.A寮�鍏�; - if (this.device.IsCustomizeImage == false) - { - //閲嶆柊璁剧疆鍥剧墖 - this.device.IconPath = "Device/Switch.png"; - } - } - else if (selectNo == 1) - { - this.device.DfunctionType = DeviceFunctionType.A鐏厜; - if (this.device.IsCustomizeImage == false) - { - //閲嶆柊璁剧疆鍥剧墖 - this.device.IconPath = "Device/Light.png"; - } - } - else - { - this.device.DfunctionType = DeviceFunctionType.A鎻掑骇; - if (this.device.IsCustomizeImage == false) - { - //閲嶆柊璁剧疆鍥剧墖 - this.device.IconPath = "Device/Socket1.png"; - } - } - this.device.ReSave(); - }; - }; - } - } - - //濡傛灉鏄柊椋� - if (device.Type == DeviceType.FreshAir) - { - //鍔熻兘绫诲瀷 - string caption = Language.StringByID(R.MyInternationalizationString.uFunctionType); - string strType = Language.StringByID(R.MyInternationalizationString.FreshAir); - var btnFunction = new FrameCaptionViewControl(caption, strType, listview.rowSpace / 2); - btnFunction.UseClickStatu = false; - listview.AddChidren(btnFunction); - btnFunction.InitControl(); - //搴曠嚎 - btnFunction.AddBottomLine(); + //褰撶被鍨嬪彉鏇存椂,澶翠笂鐨勭被鍨嬩篃涓�璧峰彉鏇� + btnBelongType.Text = rowFunction.Text; + }; } } @@ -379,32 +293,16 @@ /// </summary> private void AddFunctionTypeRowByMember() { - //濡傛灉鏄户鐢靛櫒,绌烘皵寮�鍏�,璋冨厜鍣ㄧ殑璇� - if (device.Type == DeviceType.OnOffOutput || device.Type == DeviceType.DimmableLight - || device.Type == DeviceType.ColorDimmableLight || device.Type == DeviceType.AirSwitch) + //鑷畾涔夊姛鑳界被鍨嬫帶浠� + var rowFunction = new DeviceFunctionTypeRowControl(device, listview.rowSpace / 2); + if (rowFunction.CanShowRow == true) { - //鍔熻兘绫诲瀷鐨勭炕璇戝悕瀛� - string strType = string.Empty; - if (this.device.DfunctionType == DeviceFunctionType.A鐏厜) - { - strType = Language.StringByID(R.MyInternationalizationString.uLight); - } - else if (this.device.DfunctionType == DeviceFunctionType.A寮�鍏�) - { - strType = Language.StringByID(R.MyInternationalizationString.uSwitch); - } - else if (this.device.DfunctionType == DeviceFunctionType.A鎻掑骇) - { - strType = Language.StringByID(R.MyInternationalizationString.uSocket1); - } - - //鍔熻兘绫诲瀷 - var btnFunction = new FrameCaptionViewControl(Language.StringByID(R.MyInternationalizationString.uFunctionType), strType, listview.rowSpace / 2); - btnFunction.UseClickStatu = false; - listview.AddChidren(btnFunction); - btnFunction.InitControl(); + //寮哄埗骞叉秹涓嶈兘閫夋嫨 + rowFunction.SetCanSelect = false; + listview.AddChidren(rowFunction); + rowFunction.InitControl(); //搴曠嚎 - btnFunction.AddBottomLine(); + rowFunction.AddBottomLine(); } } -- Gitblit v1.8.0