using System; using HDL_ON.DriverLayer; using HDL_ON.Entity; using HDL_ON.UI.CSS; using Shared; namespace HDL_ON.UI { public partial class FloorHeatingPage { public static void UpdataStates(Function updateTemp) { try { Application.RunOnMainThread(() => { if (bodyView == null) { return; } var outinTemp = Convert.ToInt32(Convert.ToDouble(updateTemp.GetAttrState(FunctionAttributeKey.SetTemp))); bodyView.btnTemp.Text = outinTemp.ToString(); bodyView.btnIndoorTemp.Text = Language.StringByID(StringId.IndoorTemp) + Convert.ToInt32(Convert.ToDouble(updateTemp.GetAttrState(FunctionAttributeKey.RoomTemp))) + "°C"; bodyView.btnMode.UnSelectedImagePath = bodyView.fhTemp.GetModeIconPath(updateTemp.GetAttrState(FunctionAttributeKey.Mode)); bodyView.arcBar.Progress = outinTemp; //if (updateTemp.trait_on_off.curValue.ToString() == "on") //{ // bodyView.arcBar.ThumbImagePath = "FunctionIcon/FloorHeating/DiyThumbIconOn.png"; // bodyView.btnSwitch.IsSelected = true; // bodyView.arcBar.IsOffline = false; //} //else //{ // bodyView.arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIcon.png"; // bodyView.btnSwitch.IsSelected = false; // bodyView.arcBar.IsOffline = true; //} if (updateTemp.trait_on_off.curValue.ToString() == "on") { bodyView.arcBar.IsOffline = false; bodyView.btnSwitch.IsSelected = true; bodyView.arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIconOn.png"; if (updateTemp.GetAttrState(FunctionAttributeKey.Mode) == "fan") { bodyView.arcBar.IsClickable = false; } else { bodyView.arcBar.IsClickable = true; } } else { bodyView.arcBar.IsOffline = true; bodyView.btnSwitch.IsSelected = false; bodyView.arcBar.IsClickable = false; bodyView.arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIcon.png"; } }); } catch (Exception ex) { MainPage.Log($"acpage updata error {ex.Message}"); } } void LoadEventList() { LoadCollectionEvent(); LoadEvent_AcStatesChange(); LoadEvent_TempChange(); //回退刷新信息事件 actionRefresh = () => { btnFunctionName.Text = btnFunctionName_Out.Text = function.name; btnFromFloor_Out.Text = btnFromFoorAndRoom.Text = function.GetRoomListName(); //function.SaveFunctionData(true); }; } /// /// 收藏功能按钮事件 /// void LoadCollectionEvent() { btnCollection.MouseUpEventHandler += (sender, e) => { btnCollection.IsSelected = function.collect = btnCollection_Out.IsSelected = !btnCollection.IsSelected; function.CollectFunction(); }; } /// /// 温度改变模式 /// void LoadEvent_TempChange() { btnMinus.MouseUpEventHandler = (sender, e) => { if(function.trait_on_off.curValue.ToString() == "off") { return; } var temp = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.SetTemp)); if (temp < Convert.ToInt32(function.GetAttribute(FunctionAttributeKey.SetTemp).min)) { return; } temp--; arcBar.Progress = temp; function.SetAttrState(FunctionAttributeKey.SetTemp, temp); btnTemp.Text = temp.ToString(); System.Collections.Generic.Dictionary d = new System.Collections.Generic.Dictionary(); d.Add(FunctionAttributeKey.SetTemp, temp.ToString()); Control.Ins.SendWriteCommand(function, d); }; btnPlus.MouseUpEventHandler = (sender, e) => { if (function.trait_on_off.curValue.ToString() == "off") { return; } var temp =(int) Convert.ToDouble(function.GetAttrState(FunctionAttributeKey.SetTemp)); if (temp > Convert.ToDouble(function.GetAttribute(FunctionAttributeKey.SetTemp).max)) { return; } temp++; arcBar.Progress = temp; btnTemp.Text = temp.ToString(); function.SetAttrState(FunctionAttributeKey.SetTemp, temp); System.Collections.Generic.Dictionary d = new System.Collections.Generic.Dictionary(); d.Add(FunctionAttributeKey.SetTemp, temp.ToString()); Control.Ins.SendWriteCommand(function, d); }; arcBar.OnStopTrackingTouchEvent = (sender, e) => { function.SetAttrState(FunctionAttributeKey.SetTemp,arcBar.Progress); btnTemp.Text = arcBar.Progress.ToString(); System.Collections.Generic.Dictionary d = new System.Collections.Generic.Dictionary(); d.Add(FunctionAttributeKey.SetTemp, arcBar.Progress.ToString()); Control.Ins.SendWriteCommand(function, d); }; arcBar.OnProgressChangedEvent = (sender, e) => { function.SetAttrState(FunctionAttributeKey.SetTemp, e); btnTemp.Text = Convert.ToDouble( function.GetAttrState(FunctionAttributeKey.SetTemp)).ToString(); }; } /// /// 控制模式事件 /// void LoadEvent_AcStatesChange() { btnMode.MouseUpEventHandler = (sender, e) => { if (function.trait_on_off.curValue.ToString() == "off") { return; } LoadDiv_ChangeModeView(); }; btnSwitch.MouseUpEventHandler = (sender, e) => { btnSwitch.IsSelected = !btnSwitch.IsSelected; function.trait_on_off.curValue = btnSwitch.IsSelected ? "on" : "off"; if (function.trait_on_off.curValue.ToString() == "on") { //arcBar.ProgressBarColor = CSS_Color.MainColor; arcBar.ThumbImagePath = "FunctionIcon/FloorHeating/DiyThumbIconOn.png"; btnSwitch.IsSelected = true; arcBar.IsOffline = false; } else { //arcBar.ProgressBarColor = CSS_Color.PromptingColor2; arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIcon.png"; btnSwitch.IsBold = false; arcBar.IsOffline = true; } System.Collections.Generic.Dictionary d = new System.Collections.Generic.Dictionary(); d.Add(FunctionAttributeKey.OnOff, function.trait_on_off.curValue.ToString()); Control.Ins.SendWriteCommand(function, d); }; } /// /// 加载模式改变事件 /// void LoadEvent_ChangeMode(Dialog dialog, FrameLayout dialogView, Button btn1, Button btn2, string curMode) { EventHandler eventHandler = (sender, e) => { dialog.Close(); }; EventHandler eventHandler1 = (sender, e) => { btn1.IsSelected = btn2.IsSelected = true; function.SetAttrState(FunctionAttributeKey.Mode,curMode); btnMode.UnSelectedImagePath = btn1.SelectedImagePath; //byte pro = 6;//不处理温度显示,等待回复数据再处理 //function.Fh_Mode_Temp.TryGetValue(curMode, out pro); //arcBar.Progress = pro; System.Collections.Generic.Dictionary d = new System.Collections.Generic.Dictionary(); d.Add(FunctionAttributeKey.Mode, function.GetAttrState(FunctionAttributeKey.Mode)); Control.Ins.SendWriteCommand(function, d); dialog.Close(); }; btn1.MouseUpEventHandler = eventHandler1; btn2.MouseUpEventHandler = eventHandler1; dialogView.MouseUpEventHandler = eventHandler; } } }