From 4ad6d53e2a8dc59d99405a053ddc46f49ae7a1b3 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期四, 14 十月 2021 11:55:51 +0800
Subject: [PATCH] 干接点新spk 兼容问题
---
HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs | 667 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 636 insertions(+), 31 deletions(-)
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs
index fcff06d..aca8e0a 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs
@@ -1,34 +1,122 @@
锘縰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;
namespace HDL_ON.UI
{
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>
+ ///
+ /// </summary>
public void LoadPage()
{
new TopViewDiv(bodyView, Language.StringByID(StringId.EnergyMonitoring)).LoadTopView();
bodyView.BackgroundColor = CSS_Color.BackgroundColor;
- var generalTableView = new FrameLayout()
+ var contentView = new VerticalScrolViewLayout()
+ {
+ Y = Application.GetRealHeight(64),
+ Height = Application.GetRealHeight(603),
+ };
+ bodyView.AddChidren(contentView);
+
+ #region 椤堕儴view
+ generalTableView = new FrameLayout()
{
Gravity = Gravity.CenterHorizontal,
- Y = Application.GetRealHeight(80),
+ 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,
};
- bodyView.AddChidren(generalTableView);
+ contentView.AddChidren(generalTableView);
- TextButton btnTotalValue = new TextButton()
+ btnTotalValue = new TextButton()
{
X = Application.GetRealWidth(18),
Y = Application.GetRealWidth(24),
@@ -42,9 +130,7 @@
};
generalTableView.AddChidren(btnTotalValue);
- btnTotalValue.Width = btnTotalValue.GetTextWidth();
-
- var btnTotalValueUint = new Button()
+ btnTotalValueUint = new Button()
{
X = btnTotalValue.Right,
Y = Application.GetRealWidth(24),
@@ -58,45 +144,564 @@
};
generalTableView.AddChidren(btnTotalValueUint);
- var btnValue = new Button()
+ btnRealTimeData = new Button()
{
X = Application.GetRealWidth(18),
Y = btnTotalValue.Bottom,
Width = Application.GetRealWidth(209),
Height = Application.GetRealWidth(28),
- TextColor = CSS_Color.FirstLevelTitleColor,
+ TextColor = CSS_Color.TextualColor,
TextSize = CSS_FontSize.SubheadingFontSize,
- IsBold = true,
TextAlignment = TextAlignment.CenterLeft,
+ TextID = StringId.RealTimePowerConsumption,
};
- generalTableView.AddChidren(btnValue);
+ generalTableView.AddChidren(btnRealTimeData);
+
var echartsView = new FrameLayout()
{
- Width = Application.GetRealWidth(100),
- Height = Application.GetRealWidth(100),
+ Width = Application.GetRealWidth(118),
+ Height = Application.GetRealWidth(118),
X = Application.GetRealWidth(227),
- Y = Application.GetRealWidth(16),
+ //Y = Application.GetRealWidth(16),
};
generalTableView.AddChidren(echartsView);
- MyEchartsViewOn myEchartsView = new MyEchartsViewOn() {
- Width = Application.GetRealWidth(100),
- Height = Application.GetRealWidth(100),
+ myEchartsView_Pie = new MyEchartsViewOn()
+ {
+ Width = Application.GetRealWidth(118),
+ Height = Application.GetRealWidth(118),
+ };
+ echartsView.AddChidren(myEchartsView_Pie);
+
+ Dictionary<string, string> list = new Dictionary<string, string>();
+ foreach(var ene in energyList)
+ {
+ double tt = 0;
+ double.TryParse(ene.GetAttrState(FunctionAttributeKey.TotalElectricity), out tt);
+ tt *= 100;//涔樹互100锛屽皬浜�1鏃犳硶鍔犺浇echart
+ list.Add(ene.name, tt.ToString());
+ }
+ myEchartsView_Pie.ShowWithOption(new EchartsOption_Pie().InitDateJson(list));
+
+ 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();
};
- 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);
+ UpdataValue();
+ #endregion
+
+
+ energyListView = new FrameLayout()
+ {
+ Y = generalTableView.Bottom + Application.GetRealWidth(8),
+ Height = Application.GetRealWidth(116 * energyList.Count + 50),
+ };
+ contentView.AddChidren(energyListView);
+ int index = 0;
+ foreach (var energy in energyList)
+ {
+ EnergyRow(energy, energyListView, index);
+ index++;
+ new System.Threading.Thread(() =>
+ {
+ Control.Ins.SendReadCommand(energy);
+ })
+ { IsBackground = true }.Start();
+ }
}
+
+ /// <summary>
+ ///
+ /// </summary>
+ void showDiagramView()
+ {
+ 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(281),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ Radius = (uint)Application.GetRealWidth(12),
+ BorderColor = 0x00000000,
+ BorderWidth = 0,
+ };
+ generalTableView.AddChidren(diagramView);
+
+ #region 閫夋嫨鏁版嵁鏃ユ湡鑼冨洿
+ var showDataTypeView = new FrameLayout()
+ {
+ X = Application.GetRealWidth(183),
+ Y = Application.GetRealHeight(12),
+ Width = Application.GetRealWidth(144),
+ Height = Application.GetRealHeight(24),
+ BackgroundImagePath = "FunctionIcon/EnvironmentalScience/SensorHistoryBg1.png",
+ };
+ diagramView.AddChidren(showDataTypeView);
+
+ var btnShowHistroyData_Day = new Button()
+ {
+ Width = Application.GetRealWidth(48),
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.PromptingColor2,
+ SelectedTextColor = CSS_Color.MainColor,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ IsSelected = true,
+ TextID = StringId.day,
+ };
+ showDataTypeView.AddChidren(btnShowHistroyData_Day);
+
+ var btnShowHistroyData_Week = new Button()
+ {
+ X = Application.GetRealWidth(48),
+ Width = Application.GetRealWidth(48),
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.PromptingColor2,
+ SelectedTextColor = CSS_Color.MainColor,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ TextID = StringId.week,
+ };
+ showDataTypeView.AddChidren(btnShowHistroyData_Week);
+
+ var btnShowHistroyData_Month = new Button()
+ {
+ X = Application.GetRealWidth(48 * 2),
+ Width = Application.GetRealWidth(48),
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.PromptingColor2,
+ SelectedTextColor = CSS_Color.MainColor,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ Text = DateTime.Now.Month.ToString() + Language.StringByID(StringId.month),
+ };
+ 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.GetRealWidth(52),
+ Height = Application.GetRealWidth(190),
+ };
+ diagramView.AddChidren(historyDataView);
+
+ myEchartsView_Line = new MyEchartsViewOn()
+ {
+ Y = Application.GetRealWidth(10),
+ Height = Application.GetRealWidth(180),
+ };
+ historyDataView.AddChidren(myEchartsView_Line);
+ }
+
+ /// <summary>
+ /// 璇诲彇鍘嗗彶鏁版嵁
+ /// </summary>
+ void LoadMothed_GetHistoryData(Function sr,bool isDel)
+ {
+ if(isDel)//鍒犻櫎鏁版嵁鐜板疄
+ {
+ brokenLine.YvalueText = "";
+ foreach (var ene in queryList)
+ {
+ brokenLine.YvalueText += ene.GetAttrState("ydata");
+ }
+ var opString = brokenLine.InitOption();
+
+ Application.RunOnMainThread(() =>
+ {
+ myEchartsView_Line.ShowWithOption(opString);
+ });
+
+ return;
+ }
+
+ var loadPage = new Loading()
+ {
+ LodingBackgroundColor = 0x88888888,
+ };
+ diagramView.AddChidren(loadPage);
+
+ new System.Threading.Thread(() =>
+ {
+ try
+ {
+ Application.RunOnMainThread(() =>
+ {
+ 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 revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<EnvironmentalSensorHistor>>(revertObj.Data.ToString());
+
+ List<string> vs = new List<string>();
+ if (brokenLine.YvalueText == "")
+ {
+ foreach (var data in revertData)
+ {
+ vs.Add(data.fieldName);
+ }
+ brokenLine.InitXdataText(vs);
+ }
+ if (sr.GetAttribute("ydata") == null)
+ {
+ sr.attributes.Add(new FunctionAttributes() { key = "ydata" });
+ }
+ sr.SetAttrState("ydata", brokenLine.InitYdataText(sr.name, revertData, sr.GetAttrState("color")) + ",");
+ }
+ }
+ brokenLine.yTitle = Language.StringByID(StringId.EnergyConsumption) + "(kW)";
+ brokenLine.xTitle = Language.StringByID(StringId.timeMode);
+ if(curQueryType != "hour")
+ {
+ brokenLine.xTitle = Language.StringByID(StringId.Date);
+ }
+ var opString = brokenLine.InitOption();
+
+ Application.RunOnMainThread(() =>
+ {
+ myEchartsView_Line.ShowWithOption(opString);
+ });
+ }
+ catch (Exception ex)
+ {
+ MainPage.Log($"sensor history error : {ex.Message}");
+ }
+ finally
+ {
+ Application.RunOnMainThread(() =>
+ {
+ loadPage.Hide();
+ });
+ }
+ })
+ { IsBackground = true }.Start();
+ }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public void EnergyRow(Function energy, FrameLayout view, int index)
+ {
+ var btnLine = new Button()
+ {
+ Y = Application.GetRealWidth(116 * index),
+ Height = Application.GetRealWidth(16),
+ };
+ view.AddChidren(btnLine);
+
+ //瀹氫箟浠h〃鑹�
+ energy.attributes.Add(new FunctionAttributes() { key = "color", state = colorList2[index] });
+
+ var row = new EnergyRow(energy, colorList[index]);
+
+ row.SetHistory_Action = (isAdd) =>
+ {
+ 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);
+ }
+
+
+ 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 = newValue;
+ 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;
+ double.TryParse(ene.GetAttrState(FunctionAttributeKey.TotalElectricity), out power);
+ totalValue += power;
+
+ int realTimePower = 0;
+ int.TryParse(ene.GetAttrState(FunctionAttributeKey.Power), out realTimePower);
+ realtimeValue += realTimePower;
+
+ #region 楗煎浘鏁版嵁
+ double tt = 0;
+ double.TryParse(ene.GetAttrState(FunctionAttributeKey.TotalElectricity), out tt);
+ 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()
+ {
+ X = Application.GetRealWidth(8),
+ Y = Application.GetRealWidth(16),
+ Width = Application.GetRealWidth(12),
+ Height = Application.GetRealWidth(12),
+ BackgroundColor = color
+ };
+ AddChidren(btnColorTip);
+
+ var btnName = new Button()
+ {
+ X = Application.GetRealWidth(28),
+ Y = Application.GetRealHeight(10),
+ Width = Application.GetRealWidth(200),
+ Height = Application.GetRealHeight(24),
+ Text = energy.name,
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.TextFontSize,
+ };
+ AddChidren(btnName);
+
+ var btnFromFloor = new Button()
+ {
+ X = Application.GetRealWidth(28),
+ Y = Application.GetRealHeight(10 + 24),
+ Width = Application.GetRealWidth(200),
+ Height = Application.GetRealHeight(18),
+ Text = energy.GetRoomListName(),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ };
+ AddChidren(btnFromFloor);
+
+ btnValue = new Button()
+ {
+ X = Application.GetRealWidth(28),
+ Y = Application.GetRealWidth(57),
+ Width = Application.GetRealWidth(226),
+ Height = Application.GetRealWidth(43),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextSize = CSS_FontSize.HeadlineFontSize,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ Text = energy.GetAttrState(FunctionAttributeKey.Power),
+ Tag = energy.sid,
+ IsBold = true,
+ };
+ AddChidren(btnValue);
+
+
+ var btnSetting = new Button()
+ {
+ X = Application.GetRealWidth(291),
+ Y = Application.GetRealWidth(6),
+ Width = Application.GetMinRealAverage(32),
+ Height = Application.GetMinRealAverage(32),
+ UnSelectedImagePath = "Public/FuncInfoSetIcon.png",
+ };
+ AddChidren(btnSetting);
+
+ var btnSeltSensorValue = new Button()
+ {
+ X = Application.GetRealWidth(16),
+ Y = Application.GetRealWidth(47),
+ Width = Application.GetRealWidth(200),
+ Height = Application.GetRealWidth(43),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ IsBold = true,
+ TextSize = CSS_FontSize.HeadlineFontSize,
+ };
+ AddChidren(btnSeltSensorValue);
+
+ btnShowData = new Button()
+ {
+ X = Application.GetRealWidth(291),
+ Y = Application.GetRealWidth(62),
+ Width = Application.GetMinRealAverage(32),
+ Height = Application.GetMinRealAverage(32),
+ UnSelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIcon.png",
+ SelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIconOn.png",
+ IsSelected = false,
+ };
+ 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);
+ infoView.LoadPage();
+ 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