From 6d73bf6e816570291865674bef8bce8972e4de3f Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期三, 01 十二月 2021 16:32:57 +0800 Subject: [PATCH] 2021-12-01-01 --- HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs | 584 +++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 410 insertions(+), 174 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs index 560fb7a..b39f8be 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs @@ -1,6 +1,7 @@ 锘縰sing System; using System.Collections.Generic; using HDL_ON.DAL.Server; +using HDL_ON.DriverLayer; using HDL_ON.Entity; using HDL_ON.UI.CSS; using Shared; @@ -8,17 +9,84 @@ { public class EnergyMainPage : FrameLayout { - FrameLayout bodyView; + static EnergyMainPage bodyView; + + /// <summary> + /// 椤堕儴鍖哄煙 + /// </summary> + FrameLayout generalTableView; + + /// <summary> + /// 瀹炴椂鍔熻�� + /// </summary> + Button btnRealTimeData; + /// <summary> + /// 瀹炴椂鍔熻�楀崟浣� + /// </summary> + Button btnTotalValueUint; + /// <summary> + /// 鎬诲姛鑰� + /// </summary> + TextButton btnTotalValue; + /// <summary> + /// 鎬诲姛鑰�-楗煎浘 + /// </summary> + MyEchartsViewOn myEchartsView_Pie; + /// <summary> + /// 鍘嗗彶鏁版嵁鍖哄煙 + /// </summary> + FrameLayout diagramView; + /// <summary> + /// 鏇茬嚎鍥炬暟鎹畇tring + /// </summary> + EchartsOption_BrokenLine brokenLine; + /// <summary> + /// 鏇茬嚎鍥句笅鎷夋寜閽� + /// </summary> + Button btnDrodDown; + + + /// <summary> + /// 鎻掓煡璇㈢殑鑳芥簮鍒楄〃 + /// </summary> + List<Function> queryList = new List<Function>(); + /// <summary> + /// 鏌ヨ鏉′欢 + /// hour銆亀eek銆乵onth + /// </summary> + string curQueryType = "hour"; + + + /// <summary> + /// 鑳芥簮鍒楄〃鍖哄煙 + /// </summary> + FrameLayout energyListView; + /// <summary> + /// 鍘嗗彶鏁版嵁鍥捐〃 + /// </summary> + MyEchartsViewOn myEchartsView_Line; + /// <summary> + /// 鏇茬嚎鍥炬槸鍚﹀睍寮� + /// </summary> + bool isUnfoldOrStow = false; + + List<Function> energyList = new List<Function>(); List<uint> colorList = new List<uint>(){0xFF80AEFF, 0xFFFFD154, 0xFFFF9D54, 0xFFFE6A6A, 0xFFB183C3, 0xFFADE764, 0xFFD7504B, 0xFFC6E579, 0xFFF4E001, 0xFFF0805A, 0xFF26C0C0}; List<string> colorList2 = new List<string>() { "#80AEFF", "#FFD154", "#FF9D54", "#FE6A6A", "#B183C3", "#ADE764", "#D7504B", "#C6E579", "#F4E001", "#F0805A", "#26C0C0"}; - + /// <summary> + /// 涓婚〉 + /// </summary> public EnergyMainPage() { bodyView = this; + energyList = FunctionList.List.GetEnergyList(); + var breaker = FunctionList.List.Functions.FindAll((obj) => obj.spk == SPK.AirSwitch); + var energyBreker = breaker.FindAll((obj) => obj.GetAttribute("power") != null); + energyList.AddRange(energyBreker); } /// <summary> @@ -37,18 +105,18 @@ bodyView.AddChidren(contentView); #region 椤堕儴view - var generalTableView = new FrameLayout() + generalTableView = new FrameLayout() { Gravity = Gravity.CenterHorizontal, - Y = Application.GetRealHeight(16), + Y = Application.GetRealWidth(16), Width = Application.GetRealWidth(343), - Height = Application.GetRealWidth(148), + Height = Application.GetRealWidth(148),//419//148 Radius = (uint)Application.GetRealWidth(5), BackgroundColor = CSS_Color.MainBackgroundColor, }; contentView.AddChidren(generalTableView); - TextButton btnTotalValue = new TextButton() + btnTotalValue = new TextButton() { X = Application.GetRealWidth(18), Y = Application.GetRealWidth(24), @@ -62,9 +130,7 @@ }; generalTableView.AddChidren(btnTotalValue); - btnTotalValue.Width = btnTotalValue.GetTextWidth(); - - var btnTotalValueUint = new Button() + btnTotalValueUint = new Button() { X = btnTotalValue.Right, Y = Application.GetRealWidth(24), @@ -78,7 +144,7 @@ }; generalTableView.AddChidren(btnTotalValueUint); - var btnRealTimeData = new Button() + btnRealTimeData = new Button() { X = Application.GetRealWidth(18), Y = btnTotalValue.Bottom, @@ -90,7 +156,7 @@ TextID = StringId.RealTimePowerConsumption, }; generalTableView.AddChidren(btnRealTimeData); - btnRealTimeData.Text = Language.StringByID(StringId.RealTimePowerConsumption).Replace("{0}", "0"); + var echartsView = new FrameLayout() { @@ -100,65 +166,106 @@ //Y = Application.GetRealWidth(16), }; generalTableView.AddChidren(echartsView); - MyEchartsViewOn myEchartsView = new MyEchartsViewOn() { + myEchartsView_Pie = new MyEchartsViewOn() + { Width = Application.GetRealWidth(118), Height = Application.GetRealWidth(118), }; + echartsView.AddChidren(myEchartsView_Pie); - echartsView.AddChidren(myEchartsView); Dictionary<string, string> list = new Dictionary<string, string>(); - list.Add("鐢靛啺绠�", "12"); - list.Add("鐢甸鎵�", "2"); - list.Add("绌鸿皟", "9"); - list.Add("娲楄。鏈�", "3"); - list.Add("鐢佃剳", "33"); - var echartsPie = new EchartsOption_Pie(); - var echartRootJson = echartsPie.InitDateJson(list); - //var echartRootJsonString = Newtonsoft.Json.JsonConvert.SerializeObject(echartRootJson); - myEchartsView.ShowWithOption(echartRootJson); + foreach(var ene in energyList) + { + double tt = 0; + double.TryParse(ene.GetAttrState(FunctionAttributeKey.TotalElectricity), out tt); + tt *= 100;//涔樹互100锛屽皬浜�1鏃犳硶鍔犺浇echart + tt = Math.Round(tt, 2); + list.Add(ene.name, tt.ToString()); + } + myEchartsView_Pie.ShowWithOption(new EchartsOption_Pie().InitDateJson(list)); - - var btnDrodDown = new Button() + btnDrodDown = new Button() { Y = Application.GetRealWidth(118), Width = Application.GetRealWidth(343), Height = Application.GetRealWidth(30), UnSelectedImagePath = "FunctionIcon/Energy/EnergyDrodDownIcon.png", + SelectedImagePath = "FunctionIcon/Energy/EnergyDrodUpIcon.png", }; + initDiagramView(); generalTableView.AddChidren(btnDrodDown); + btnDrodDown.MouseUpEventHandler = (sender, e) => { + isUnfoldOrStow = btnDrodDown.IsSelected = !btnDrodDown.IsSelected; + showDiagramView(); + }; + UpdataValue(); #endregion - var energyList = FunctionList.List.GetEnergyList(); - var energyListView = new FrameLayout() + energyListView = new FrameLayout() { Y = generalTableView.Bottom + Application.GetRealWidth(8), - Height = Application.GetRealWidth(116 * energyList.Count) , + Height = Application.GetRealWidth(116 * energyList.Count + 50), }; contentView.AddChidren(energyListView); int index = 0; - foreach(var energy in energyList) + foreach (var energy in energyList) { EnergyRow(energy, energyListView, index); index++; + new System.Threading.Thread(() => + { + Control.Ins.SendReadCommand(energy); + }) + { IsBackground = true }.Start(); } + + } - public void ddd(FrameLayout contentView) + /// <summary> + /// + /// </summary> + void showDiagramView() { - - FrameLayout diagramView = new FrameLayout() + if (isUnfoldOrStow)//灞曞紑 { + generalTableView.Height = Application.GetRealWidth(419); + btnDrodDown.Y = Application.GetRealWidth(389); + btnDrodDown.IsSelected = true; + } + else + { + generalTableView.Height = Application.GetRealWidth(148); + btnDrodDown.Y = Application.GetRealWidth(118); + btnDrodDown.IsSelected = false; + } + + energyListView.Y = generalTableView.Bottom + Application.GetRealWidth(8); + } + + /// <summary> + /// 鍔犺浇鏇茬嚎鍥� + /// </summary> + /// <param name="contentView"></param> + void initDiagramView() + { + brokenLine = new EchartsOption_BrokenLine(); + + + diagramView = new FrameLayout() + { + Y = Application.GetRealWidth(136), Gravity = Gravity.CenterHorizontal, Width = Application.GetRealWidth(343), - Height = Application.GetRealWidth(420), + Height = Application.GetRealWidth(281), BackgroundColor = CSS_Color.MainBackgroundColor, Radius = (uint)Application.GetRealWidth(12), BorderColor = 0x00000000, BorderWidth = 0, }; - contentView.AddChidren(diagramView); + generalTableView.AddChidren(diagramView); #region 閫夋嫨鏁版嵁鏃ユ湡鑼冨洿 var showDataTypeView = new FrameLayout() @@ -203,154 +310,158 @@ TextColor = CSS_Color.PromptingColor2, SelectedTextColor = CSS_Color.MainColor, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, - Text = DateTime.Now.Month.ToString() + Language.StringByID(StringId.month), + Text = Language.StringByID(StringId.month),//DateTime.Now.Month.ToString() + }; showDataTypeView.AddChidren(btnShowHistroyData_Month); + + + btnShowHistroyData_Day.MouseUpEventHandler = (sender, e) => + { + showDataTypeView.BackgroundImagePath = "FunctionIcon/EnvironmentalScience/SensorHistoryBg1.png"; + btnShowHistroyData_Day.IsSelected = true; + btnShowHistroyData_Month.IsSelected = false; + btnShowHistroyData_Week.IsSelected = false; + curQueryType = "hour"; + brokenLine.YvalueText = ""; + foreach (var enery in queryList) + { + LoadMothed_GetHistoryData(enery,false); + } + }; + + btnShowHistroyData_Week.MouseUpEventHandler = (sender, e) => + { + showDataTypeView.BackgroundImagePath = "FunctionIcon/EnvironmentalScience/SensorHistoryBg2.png"; + btnShowHistroyData_Day.IsSelected = false; + btnShowHistroyData_Month.IsSelected = false; + btnShowHistroyData_Week.IsSelected = true; + curQueryType = "week"; + brokenLine.YvalueText = ""; + foreach (var enery in queryList) + { + LoadMothed_GetHistoryData(enery, false); + } + }; + btnShowHistroyData_Month.MouseUpEventHandler = (sender, e) => + { + showDataTypeView.BackgroundImagePath = "FunctionIcon/EnvironmentalScience/SensorHistoryBg3.png"; + btnShowHistroyData_Day.IsSelected = false; + btnShowHistroyData_Month.IsSelected = true; + btnShowHistroyData_Week.IsSelected = false; + curQueryType = "month"; + brokenLine.YvalueText = ""; + foreach (var enery in queryList) + { + LoadMothed_GetHistoryData(enery, false); + } + }; + #endregion var historyDataView = new FrameLayout() { Gravity = Gravity.CenterHorizontal, - Y = Application.GetRealHeight(52), - Width = Application.GetRealWidth(343 - 32), - Height = Application.GetRealHeight(270), + Y = Application.GetRealWidth(52), + Height = Application.GetRealWidth(190), }; diagramView.AddChidren(historyDataView); - var myEchartsView = new MyEchartsViewOn(); - - historyDataView.AddChidren(myEchartsView); - + myEchartsView_Line = new MyEchartsViewOn() + { + Y = Application.GetRealWidth(10), + Height = Application.GetRealWidth(180), + }; + historyDataView.AddChidren(myEchartsView_Line); } - /// <summary> - /// 璇诲彇浼犳劅鍣ㄥ巻鍙叉暟鎹� - /// </summary> - void ddd2(string curQueryType,Function function,int index) + + /// <summary> + /// 璇诲彇鍘嗗彶鏁版嵁 + /// </summary> + void LoadMothed_GetHistoryData(Function sr,bool isDel) + { + if(isDel)//鍒犻櫎鏁版嵁鐜板疄 { - var seriesList = new List<EchartSeriesItem>(); - var loadPage = new Loading() + brokenLine.YvalueText = ""; + foreach (var ene in queryList) { - LodingBackgroundColor = 0x88888888, - }; - historyDataView.AddChidren(loadPage); + brokenLine.YvalueText += ene.GetAttrState("ydata"); + } + var opString = brokenLine.InitOption(); - new System.Threading.Thread(() => + Application.RunOnMainThread(() => { - try + myEchartsView_Line.ShowWithOption(opString); + }); + + return; + } + + var loadPage = new Loading() + { + LodingBackgroundColor = 0x88888888, + }; + diagramView.AddChidren(loadPage); + + new System.Threading.Thread(() => + { + try + { + Application.RunOnMainThread(() => { - Application.RunOnMainThread(() => - { - loadPage.Start(Language.StringByID(StringId.PleaseWait)); - }); - int i = 0; + loadPage.Start(Language.StringByID(StringId.PleaseWait)); + }); + var sensorType = sr.spk.Split(".")[1]; + var revertObj = new HttpServerRequest().GetSensorHistory(curQueryType, sr.deviceId, "total_electricity"); + if (revertObj != null) + { + if (revertObj.Code == StateCode.SUCCESS) { - var sensorType = function.spk.Split(".")[0]; - var revertObj = new HttpServerRequest().GetSensorHistory(curQueryType, function.deviceId, sensorType); + var revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<EnvironmentalSensorHistor>>(revertObj.Data.ToString()); - if (revertObj != null) + List<string> vs = new List<string>(); + if (brokenLine.YvalueText == "") { - if (revertObj.Code == StateCode.SUCCESS) + foreach (var data in revertData) { - var revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<EnvironmentalSensorHistor>>(revertObj.Data.ToString()); - - var sItem = new EchartSeriesItem - { - data = new List<int>(), - lineStyle = new EchartLineStyle() - { - color = colorList2[i], -#if __IOS__ - width = 5, -#elif __ANDROID__ - width = 2, -#endif - }, - }; - - foreach (var d in revertData) - { - echartRootJson.xAxis.data.Add(d.fieldName); - echartRootJson.yAxis.data.Add(d.fieldValue); - } - seriesList.Add(sItem); + vs.Add(data.fieldName); } - else - { - Application.RunOnMainThread(() => - { - IMessageCommon.Current.ShowErrorInfoAlter("", true, 2, Language.StringByID(StringId.GetSensorHistoryFailed), false); - }); - } + brokenLine.InitXdataText(vs); } - i++; + if (sr.GetAttribute("ydata") == null) + { + sr.attributes.Add(new FunctionAttributes() { key = "ydata" }); + } + sr.SetAttrState("ydata", brokenLine.InitYdataText(sr.name, revertData, sr.GetAttrState("color")) + ","); } - } - catch (Exception ex) + brokenLine.yTitle = Language.StringByID(StringId.EnergyConsumption) + "(kW)"; + brokenLine.xTitle = Language.StringByID(StringId.timeMode); + if(curQueryType != "hour") { - MainPage.Log($"sensor history error : {ex.Message}"); + brokenLine.xTitle = Language.StringByID(StringId.Date); } - finally + var opString = brokenLine.InitOption(); + + Application.RunOnMainThread(() => { - Application.RunOnMainThread(() => - { - loadPage.Hide(); - }); - } - }) - { IsBackground = true }.Start(); - EchartsOption echartRootJson = new EchartsOption(); - echartRootJson.series = seriesList; - - -#if __IOS__ - echartRootJson.xAxis.axisLabel.fontSize = 22; - echartRootJson.yAxis.axisLabel.fontSize = 22; -#else - echartRootJson.xAxis.axisLabel.fontSize = 8; - echartRootJson.yAxis.axisLabel.fontSize = 8; -#endif - var echartRootJsonString = Newtonsoft.Json.JsonConvert.SerializeObject(echartRootJson); - myEchartsView.ShowWithOptionJsonString(echartRootJsonString); - - } - - var curQueryType = ""; - - void LoadEvent_ChangeSensorHistoryShowType() - { - btnShowHistroyData_Day.MouseUpEventHandler = (sender, e) => + myEchartsView_Line.ShowWithOption(opString); + }); + } + catch (Exception ex) { - showDataTypeView.BackgroundImagePath = "FunctionIcon/EnvironmentalScience/SensorHistoryBg1.png"; - btnShowHistroyData_Day.IsSelected = true; - btnShowHistroyData_Month.IsSelected = false; - btnShowHistroyData_Week.IsSelected = false; - curQueryType = "hour"; - LoadMothed_GetSensorHistoryData(); - }; - - btnShowHistroyData_Month.MouseUpEventHandler = (sender, e) => + MainPage.Log($"sensor history error : {ex.Message}"); + } + finally { - showDataTypeView.BackgroundImagePath = "FunctionIcon/EnvironmentalScience/SensorHistoryBg3.png"; - btnShowHistroyData_Day.IsSelected = false; - btnShowHistroyData_Month.IsSelected = true; - btnShowHistroyData_Week.IsSelected = false; - curQueryType = "week"; - LoadMothed_GetSensorHistoryData(); - }; - btnShowHistroyData_Week.MouseUpEventHandler = (sender, e) => - { - showDataTypeView.BackgroundImagePath = "FunctionIcon/EnvironmentalScience/SensorHistoryBg2.png"; - btnShowHistroyData_Day.IsSelected = false; - btnShowHistroyData_Month.IsSelected = false; - btnShowHistroyData_Week.IsSelected = true; - curQueryType = "month"; - LoadMothed_GetSensorHistoryData(); - }; - - } - + Application.RunOnMainThread(() => + { + loadPage.Hide(); + }); + } + }) + { IsBackground = true }.Start(); + } /// <summary> /// @@ -364,16 +475,134 @@ }; view.AddChidren(btnLine); - var row = new FrameLayout() + //瀹氫箟浠h〃鑹� + energy.attributes.Add(new FunctionAttributes() { key = "color", state = colorList2[index] }); + + var row = new EnergyRow(energy, colorList[index]); + + row.SetHistory_Action = (isAdd) => { - Y = btnLine.Bottom, - Gravity = Gravity.CenterHorizontal, - Width = Application.GetRealWidth(343), - Height = Application.GetRealWidth(100), - Radius = (uint)Application.GetRealWidth(12), - BackgroundColor = CSS_Color.MainBackgroundColor, + if (isAdd) + { + if(!isUnfoldOrStow)//濡傛灉鏇茬嚎鍥炬病鏈夊姞杞藉嚭鏉ワ紝鍒欒嚜鍔ㄥ姞杞藉嚭鏉� + { + isUnfoldOrStow = true; + showDiagramView(); + } + queryList.Add(row.function); + LoadMothed_GetHistoryData(row.function, false); + } + else + { + queryList.Remove(row.function); + LoadMothed_GetHistoryData(row.function, true); + if (queryList.Count == 0)//濡傛灉鏌ヨ鍒楄〃涓�0锛岃嚜鍔ㄦ敹璧锋洸绾垮浘 + { + isUnfoldOrStow = false; + showDiagramView(); + } + } }; + + + row.Y = btnLine.Bottom; view.AddChidren(row); + //璁板綍闇�瑕佹洿鏂扮殑鏇存柊鎸夐挳 + listButton_value.Add(row.btnValue); + } + + /// <summary> + /// 璁板綍闇�瑕佹洿鏂扮殑鏇存柊鎸夐挳 + /// </summary> + public List<Button> listButton_value = new List<Button>(); + + /// <summary> + /// 鏇存柊鍔熻兘鐘舵�� + /// </summary> + public static void UpdataStatus(Function updataTemp) + { + Application.RunOnMainThread(() => + { + try + { + if (bodyView == null) + return; + foreach (var btn in bodyView.listButton_value) + { + if (btn.Tag.ToString() == updataTemp.sid) + { + var newValue = updataTemp.GetAttrState(FunctionAttributeKey.Power); + //if (newValue != btn.Text) + { + btn.Text = Math.Round(double.Parse(newValue), 2).ToString();// +"W"; + UpdataValue(); + } + } + } + } + catch (Exception ex) + { + MainPage.Log($"{bodyView.GetType().Name } UpdataStates error : {ex.Message}"); + } + }); + } + + /// <summary> + /// 鏇存柊鏁版嵁 + /// </summary> + static void UpdataValue() + { + double totalValue = 0; + double realtimeValue = 0; + Dictionary<string, string> list = new Dictionary<string, string>();//楗煎浘鏁版嵁 + foreach (var ene in bodyView.energyList) + { + double power = 0.00; + double.TryParse(ene.GetAttrState(FunctionAttributeKey.TotalElectricity), out power); + power = Math.Round(power, 2); + totalValue += power; + + double realTimePower = 0; + double.TryParse(ene.GetAttrState(FunctionAttributeKey.Power), out realTimePower); + realtimeValue += realTimePower; + realtimeValue = Math.Round(realtimeValue, 2); + + #region 楗煎浘鏁版嵁 + double tt = 0.00; + double.TryParse(ene.GetAttrState(FunctionAttributeKey.TotalElectricity), out tt); + tt = Math.Round(tt, 2); + tt *= 100;//涔樹互100锛屽皬浜�1鏃犳硶鍔犺浇echart + list.Add(ene.name, tt.ToString()); + #endregion + } + bodyView.btnTotalValue.Text = totalValue.ToString(); + realtimeValue /= 1000; + bodyView.btnRealTimeData.Text = Language.StringByID(StringId.RealTimePowerConsumption).Replace("{0}", realtimeValue.ToString()); + ///鍔ㄦ�佽幏鍙栨枃鏈搴� + bodyView.btnTotalValue.Width = bodyView.btnTotalValue.GetTextWidth() + Application.GetRealWidth(5); + bodyView.btnTotalValueUint.X = bodyView.btnTotalValue.Right; + //鍒锋柊楗煎浘 + bodyView.myEchartsView_Pie.ShowWithOption(new EchartsOption_Pie().InitDateJson(list)); + + } + } + + + public class EnergyRow : FrameLayout + { + public Button btnValue; + Button btnShowData; + public Function function; + public Action<bool> SetHistory_Action; + public EnergyRow(Function energy, uint color) + { + function = energy; + Gravity = Gravity.CenterHorizontal; + Width = Application.GetRealWidth(343); + Height = Application.GetRealWidth(100); + Radius = (uint)Application.GetRealWidth(12); + BackgroundColor = CSS_Color.MainBackgroundColor; + Tag = energy.sid; var btnColorTip = new Button() { @@ -381,13 +610,13 @@ Y = Application.GetRealWidth(16), Width = Application.GetRealWidth(12), Height = Application.GetRealWidth(12), - BackgroundColor = colorList[index], + BackgroundColor = color }; - row.AddChidren(btnColorTip); + AddChidren(btnColorTip); var btnName = new Button() { - X = Application.GetRealWidth(8 + 10 + 32), + X = Application.GetRealWidth(28), Y = Application.GetRealHeight(10), Width = Application.GetRealWidth(200), Height = Application.GetRealHeight(24), @@ -396,11 +625,11 @@ TextColor = CSS_Color.FirstLevelTitleColor, TextSize = CSS_FontSize.TextFontSize, }; - row.AddChidren(btnName); + AddChidren(btnName); var btnFromFloor = new Button() { - X = Application.GetRealWidth(8 + 10 + 32), + X = Application.GetRealWidth(28), Y = Application.GetRealHeight(10 + 24), Width = Application.GetRealWidth(200), Height = Application.GetRealHeight(18), @@ -409,9 +638,9 @@ TextColor = CSS_Color.PromptingColor1, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, }; - row.AddChidren(btnFromFloor); + AddChidren(btnFromFloor); - var btnValue = new Button() + btnValue = new Button() { X = Application.GetRealWidth(28), Y = Application.GetRealWidth(57), @@ -420,9 +649,11 @@ TextAlignment = TextAlignment.CenterLeft, TextSize = CSS_FontSize.HeadlineFontSize, TextColor = CSS_Color.FirstLevelTitleColor, - Text = "---" + Text = energy.GetAttrState(FunctionAttributeKey.Power), + Tag = energy.sid, + IsBold = true, }; - row.AddChidren(btnValue); + AddChidren(btnValue); var btnSetting = new Button() @@ -433,9 +664,9 @@ Height = Application.GetMinRealAverage(32), UnSelectedImagePath = "Public/FuncInfoSetIcon.png", }; - row.AddChidren(btnSetting); + AddChidren(btnSetting); - Button btnSeltSensorValue = new Button() + var btnSeltSensorValue = new Button() { X = Application.GetRealWidth(16), Y = Application.GetRealWidth(47), @@ -446,9 +677,8 @@ IsBold = true, TextSize = CSS_FontSize.HeadlineFontSize, }; - row.AddChidren(btnSeltSensorValue); + AddChidren(btnSeltSensorValue); - Button btnShowData; btnShowData = new Button() { X = Application.GetRealWidth(291), @@ -457,15 +687,16 @@ Height = Application.GetMinRealAverage(32), UnSelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIcon.png", SelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIconOn.png", - IsSelected = true, + IsSelected = false, }; - row.AddChidren(btnShowData); + AddChidren(btnShowData); btnSetting.MouseUpEventHandler = (sender, e) => { Action backAction = () => { btnName.Text = energy.name; + btnFromFloor.Text = energy.GetRoomListName(); }; var infoView = new FunctionBaseInfoSetPage(energy, backAction); MainPage.BasePageView.AddChidren(infoView); @@ -473,6 +704,11 @@ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; }; + btnShowData.MouseUpEventHandler = (sender, e) => { + btnShowData.IsSelected = !btnShowData.IsSelected; + SetHistory_Action(btnShowData.IsSelected); + }; } + } -} +} \ No newline at end of file -- Gitblit v1.8.0