using Shared.SimpleControl.Phone; 
 | 
using System; 
 | 
namespace Shared.SimpleControl.Pad 
 | 
{ 
 | 
    public class UserFHPage : FrameLayout 
 | 
    { 
 | 
        /// <summary> 
 | 
        /// 当前视图 
 | 
        /// </summary> 
 | 
        static UserFHPage curView; 
 | 
        FrameLayout fhBodyView; 
 | 
        FoolHeat fh; 
 | 
        Room room; 
 | 
  
 | 
        Button btnInterior; 
 | 
        Button btnFHSwitch; 
 | 
        Button btnSetTemperature; 
 | 
        VerticalSeekBar VertTempSeekBar; 
 | 
        Button FH_Day; 
 | 
        Button FH_Night; 
 | 
        Button FH_Common; 
 | 
        Button Go_away; 
 | 
        Button FH_Auto; 
 | 
  
 | 
        /// <summary> 
 | 
        /// 构造函数 
 | 
        /// </summary> 
 | 
        /// <param name="room">Room.</param> 
 | 
        public UserFHPage (FoolHeat fh, Room room) 
 | 
        { 
 | 
            this.fh = fh; 
 | 
            this.room = room; 
 | 
            curView = this; 
 | 
             BackgroundColor = 0xFF2f2f2f; 
 | 
            readStatus (); 
 | 
            showRoomFH (); 
 | 
        } 
 | 
  
 | 
        /// <summary> 
 | 
        /// 更新地热  
 | 
        /// </summary> 
 | 
        /// <param name="subnetID">Subnet identifier.</param> 
 | 
        /// <param name="deviceID">Device identifier.</param> 
 | 
        /// <param name="acHostBytesForUpdata">Ac host bytes for updata.</param> 
 | 
        public static void UpdateStatus (FoolHeat updataFH) 
 | 
        { 
 | 
            if (curView == null) { 
 | 
                return; 
 | 
            } 
 | 
  
 | 
            if (curView.fh.SubnetID != updataFH.SubnetID && curView.fh.DeviceID != updataFH.DeviceID && curView.fh.LoopID != updataFH.LoopID) { 
 | 
                return; 
 | 
            } 
 | 
  
 | 
            Application.RunOnMainThread (() => { 
 | 
                for (int i = 0; i < curView.fhBodyView.ChildrenCount; i++) { 
 | 
                    try { 
 | 
                        var indoorT = updataFH.IndoorTemperature; 
 | 
                        string indoorTstr = Convert.ToString (indoorT, 2); 
 | 
                        if (indoorT > 127) { 
 | 
                            indoorTstr = "-" + (indoorT - 128) + "°C"; 
 | 
                        } else if (indoorT == 128) { 
 | 
                            indoorTstr = "--"; 
 | 
                        } else 
 | 
                            indoorTstr = indoorT.ToString () + "°C"; 
 | 
                        curView.btnSetTemperature.Text = updataFH.WorkingTemperature.ToString () + "°C"; 
 | 
                        curView.VertTempSeekBar.Progress = updataFH.WorkingTemperature - 5; 
 | 
                        curView.btnInterior.Text = indoorTstr; 
 | 
                        if (updataFH.Status == 1) { 
 | 
                            //考虑到其他人控制的情况下,得使当前界面更新的数据和别人控制的一样 
 | 
                            curView.btnFHSwitch.IsSelected = true; 
 | 
                            curView.FH_Day.Enable = true; 
 | 
                            curView.FH_Auto.Enable = true; 
 | 
                            curView.FH_Night.Enable = true; 
 | 
                            curView.FH_Common.Enable = true; 
 | 
                            curView.Go_away.Enable = true; 
 | 
                        } else { 
 | 
                            curView.btnFHSwitch.IsSelected = false; 
 | 
                            curView.FH_Day.Enable = false; 
 | 
                            curView.FH_Auto.Enable = false; 
 | 
                            curView.FH_Night.Enable = false; 
 | 
                            curView.FH_Common.Enable = false; 
 | 
                            curView.Go_away.Enable = false; 
 | 
                        } 
 | 
                        switch (updataFH.TemperatureType) 
 | 
                        { 
 | 
                        case 1: 
 | 
                            curView.FH_Day.IsSelected = false; 
 | 
                            curView.FH_Auto.IsSelected = false; 
 | 
                            curView.FH_Night.IsSelected = false; 
 | 
                            curView.FH_Common.IsSelected = true; 
 | 
                            curView.Go_away.IsSelected = false; 
 | 
                            break; 
 | 
                        case 2: 
 | 
                            curView.FH_Day.IsSelected = true; 
 | 
                            curView.FH_Auto.IsSelected = false; 
 | 
                            curView.FH_Night.IsSelected = false; 
 | 
                            curView.FH_Common.IsSelected = false; 
 | 
                            curView.Go_away.IsSelected = false; 
 | 
                            break; 
 | 
                        case 3: 
 | 
                            curView.FH_Day.IsSelected = false; 
 | 
                            curView.FH_Auto.IsSelected = false; 
 | 
                            curView.FH_Night.IsSelected = true; 
 | 
                            curView.FH_Common.IsSelected = false; 
 | 
                            curView.Go_away.IsSelected = false; 
 | 
                            break; 
 | 
                        case 4: 
 | 
                            curView.FH_Day.IsSelected = false; 
 | 
                            curView.FH_Auto.IsSelected = false; 
 | 
                            curView.FH_Night.IsSelected = false; 
 | 
                            curView.FH_Common.IsSelected = false; 
 | 
                            curView.Go_away.IsSelected = true; 
 | 
                            break; 
 | 
                        case 5: 
 | 
                            curView.FH_Day.IsSelected = false; 
 | 
                            curView.FH_Auto.IsSelected = true; 
 | 
                            curView.FH_Night.IsSelected = false; 
 | 
                            curView.FH_Common.IsSelected = false; 
 | 
                            curView.Go_away.IsSelected = false; 
 | 
                            break; 
 | 
                        } 
 | 
                    } catch (Exception ex) { 
 | 
                        Console.WriteLine ("UserACPage " + ex.ToString ()); 
 | 
                    } 
 | 
                } 
 | 
            }); 
 | 
        } 
 | 
  
 | 
        /// <summary> 
 | 
        /// 显示出当前房间所有的地热 
 | 
        /// </summary> 
 | 
        public void showRoomFH () 
 | 
        { 
 | 
            fhBodyView = new FrameLayout (); 
 | 
            AddChidren (fhBodyView); 
 | 
             
 | 
            #region roomBackgroundImageView 
 | 
            var roomBackgroundImageView = new FrameLayout () { 
 | 
                 X = Application.GetRealWidth (10), 
 | 
                Y = Application.GetRealHeight (10), 
 | 
                Width = Application.GetRealWidth (920), 
 | 
                Height = Application.GetRealHeight (520), 
 | 
            }; 
 | 
            fhBodyView.AddChidren (roomBackgroundImageView); 
 | 
            roomBackgroundImageView.BackgroundImagePath = room.BackGroundImage; 
 | 
            //长按更换背景 
 | 
            roomBackgroundImageView.MouseLongEventHandler += (sender, e) => { 
 | 
                Camera.SelectPicture ((obj) => { 
 | 
                    if (obj != null) { 
 | 
                        roomBackgroundImageView.BackgroundImagePath = room.Name; 
 | 
                    } 
 | 
                }, room.Name); 
 | 
            }; 
 | 
            #endregion 
 | 
            #region 工作模式,开关按钮 
 | 
            FrameLayout WrokView = new FrameLayout () {  
 | 
                X = roomBackgroundImageView.Right + Application.GetRealWidth (10), 
 | 
                Y = roomBackgroundImageView.Y, 
 | 
                Width = Application.GetRealWidth(600), 
 | 
                Height = Application.GetRealHeight(680), 
 | 
            }; 
 | 
            fhBodyView.AddChidren (WrokView); 
 | 
            btnFHSwitch = new Button () { 
 | 
                 Width = Application.GetRealWidth (200), 
 | 
                Height = Application.GetRealHeight (130), 
 | 
                X = Application.GetRealWidth (50), 
 | 
                Y = Application.GetRealHeight (40), 
 | 
                UnSelectedImagePath = "PadAdding/Black.png", 
 | 
                SelectedImagePath = "PadAdding/ModeBlackOn.png", 
 | 
                SelectedTextColor = SkinStyle.Current.SelectedColor, 
 | 
                TextColor = SkinStyle.Current.TextColor1, 
 | 
                Text = "ON" 
 | 
            }; 
 | 
            if (fh.Status == 1) { 
 | 
                btnFHSwitch.IsSelected = true; 
 | 
            } else { 
 | 
                btnFHSwitch.IsSelected = false; 
 | 
            } 
 | 
            btnFHSwitch.MouseUpEventHandler += (sender, e) => { 
 | 
                if (btnFHSwitch.IsSelected == false) { 
 | 
                    btnFHSwitch.IsSelected = true; 
 | 
                    fh.Status = 1; 
 | 
                    btnSetTemperature.Text = fh.WorkingTemperature.ToString () + "°C"; 
 | 
                    btnInterior.Text = fh.IndoorTemperature.ToString () + "°C"; 
 | 
                    FH_Day.Enable = true; 
 | 
                    FH_Night.Enable = true; 
 | 
                    FH_Common.Enable = true; 
 | 
                    Go_away.Enable = true; 
 | 
                    FH_Auto.Enable = true; 
 | 
                    //updateMode (ac.SetMode); 
 | 
                    //updateWind (ac.SetFanSpeed); 
 | 
                } else { 
 | 
                    btnFHSwitch.IsSelected = false; 
 | 
                    fh.Status = 0; 
 | 
                    btnSetTemperature.Text = fh.WorkingTemperature.ToString () + "°C"; 
 | 
                    btnInterior.Text = fh.IndoorTemperature.ToString () + "°C"; 
 | 
                    FH_Day.Enable = false; 
 | 
                    FH_Night.Enable = false; 
 | 
                    FH_Common.Enable = false; 
 | 
                    Go_away.Enable = false; 
 | 
                    FH_Auto.Enable = false; 
 | 
                    // updateMode (-1); 
 | 
                    //updateWind (-1); 
 | 
                } 
 | 
                System.Threading.Tasks.Task.Run (() => { 
 | 
                    fh = fh.Serverx_FH_CMD (FoolHeat.CommandType.Switch); 
 | 
                }); 
 | 
            }; 
 | 
            WrokView.AddChidren (btnFHSwitch); 
 | 
  
 | 
            btnSetTemperature = new Button () { 
 | 
                X = Application.GetRealWidth (20), 
 | 
                Y = Application.GetRealHeight (330), 
 | 
                Width = Application.GetRealWidth (320), 
 | 
                Height = Application.GetRealHeight (220), 
 | 
                Text = fh.WorkingTemperature.ToString () + "°C", 
 | 
                TextSize = 68, 
 | 
                TextAlignment = TextAlignment.Center, 
 | 
                Enable = false, 
 | 
            }; 
 | 
            WrokView.AddChidren (btnSetTemperature); 
 | 
  
 | 
            Button btnHorTemp = new Button () { 
 | 
                X = btnSetTemperature.Right + Application.GetRealWidth (30), 
 | 
                Y = Application.GetRealHeight (20), 
 | 
                Width = Application.GetRealWidth (100), 
 | 
                Height = Application.GetRealHeight (620), 
 | 
                UnSelectedImagePath = "PadAdding/FHPadTemp.png", 
 | 
            }; 
 | 
            WrokView.AddChidren (btnHorTemp); 
 | 
  
 | 
            VertTempSeekBar = new VerticalSeekBar () { 
 | 
                X = btnHorTemp.Right, 
 | 
                Y = btnHorTemp.Y - Application.GetRealHeight (10), 
 | 
                Width = Application.GetRealWidth (100), 
 | 
                Height = Application.GetRealHeight (640), 
 | 
                Max = 30, 
 | 
                ProgressColor = SkinStyle.Current.SelectedColor, 
 | 
                SleepTime = 0, 
 | 
                Progress = (fh.WorkingTemperature - 5) 
 | 
            }; 
 | 
            WrokView.AddChidren (VertTempSeekBar); 
 | 
            VertTempSeekBar.ProgressChanged += (sender, e) => { 
 | 
                btnSetTemperature.Text = (e + 5).ToString () + "°C"; 
 | 
                fh.WorkingTemperature = (byte)(e + 5); 
 | 
            }; 
 | 
            VertTempSeekBar.MouseUpEventHandler += (sender, e) => { 
 | 
                fh = fh.Serverx_FH_CMD (FoolHeat.CommandType.Temperatrue); 
 | 
            }; 
 | 
            #endregion 
 | 
  
 | 
            #region 温度 
 | 
            FrameLayout indoorTempView = new FrameLayout () { 
 | 
                X = roomBackgroundImageView.X, 
 | 
                Y = roomBackgroundImageView.Bottom + Application.GetRealHeight (10), 
 | 
                Width = Application.GetRealWidth (920), 
 | 
                Height = Application.GetRealHeight (150), 
 | 
                BackgroundColor = 0xFF333333, 
 | 
            }; 
 | 
            fhBodyView.AddChidren (indoorTempView); 
 | 
            var FH_Heat = new Button () { 
 | 
                Width = Application.GetRealWidth (200), 
 | 
                Height = Application.GetRealHeight (130), 
 | 
                Y = Application.GetRealHeight (10), 
 | 
                UnSelectedImagePath = "PadAdding/FHHeating.png", 
 | 
                SelectedImagePath = "PadAdding/FHCooling.png", 
 | 
            }; 
 | 
            if (fh.WorkingMode == 0) { 
 | 
                FH_Heat.IsSelected = false; 
 | 
            } else { 
 | 
                FH_Heat.IsSelected = true; 
 | 
            } 
 | 
            FH_Heat.MouseUpEventHandler += (sender, e) => { 
 | 
                if (FH_Heat.IsSelected == false) { 
 | 
                    FH_Heat.IsSelected = true; 
 | 
                    fh.WorkingMode = 1; 
 | 
                } else { 
 | 
                    FH_Heat.IsSelected = false; 
 | 
                    fh.WorkingMode = 0; 
 | 
                } 
 | 
                fh = fh.Serverx_FH_CMD (FoolHeat.CommandType.WorkMode); 
 | 
            }; 
 | 
            indoorTempView.AddChidren (FH_Heat); 
 | 
  
 | 
            var indoorT = fh.IndoorTemperature; 
 | 
            string indoorTstr = Convert.ToString (indoorT, 2); 
 | 
            if (indoorT > 127) { 
 | 
                indoorTstr = "-" + (indoorT - 128) + "°C"; 
 | 
            } else 
 | 
                indoorTstr = indoorT.ToString(); 
 | 
            Button btnText = new Button () { 
 | 
                X = Application.GetRealWidth(550), 
 | 
                Width = Application.GetRealWidth (200), 
 | 
                TextID = R.MyInternationalizationString.ACInterior, 
 | 
                TextSize = 20, 
 | 
            }; 
 | 
            indoorTempView.AddChidren (btnText); 
 | 
            btnInterior = new Button () { 
 | 
                 Width = Application.GetRealWidth (150), 
 | 
                X = btnText.Right, 
 | 
                Text = indoorTstr , 
 | 
                TextSize = 30, 
 | 
                TextAlignment = TextAlignment.Center, 
 | 
            }; 
 | 
            indoorTempView.AddChidren (btnInterior);      
 | 
            #endregion 
 | 
  
 | 
            #region FHTemperatrueTypeView 
 | 
            var FHTemperatrueTypeView = new FrameLayout () { 
 | 
                Height = Application.GetRealHeight (500), 
 | 
                Y = indoorTempView.Bottom + Application.GetRealHeight(150), 
 | 
            }; 
 | 
            fhBodyView.AddChidren (FHTemperatrueTypeView); 
 | 
  
 | 
            Button btnModeTitle = new Button () { 
 | 
                X = Application.GetRealWidth (10), 
 | 
                Width = Application.GetRealWidth (300), 
 | 
                Height = Application.GetRealHeight (70), 
 | 
                TextID = R.MyInternationalizationString.Mode, 
 | 
                TextAlignment = TextAlignment.CenterLeft, 
 | 
                TextColor = 0xFF333333, 
 | 
                TextSize = 16, 
 | 
            }; 
 | 
            FHTemperatrueTypeView.AddChidren (btnModeTitle); 
 | 
  
 | 
            FH_Day = new Button () { 
 | 
                X = Application.GetRealWidth (10), 
 | 
                Y = Application.GetRealHeight (100), 
 | 
                Width = Application.GetRealWidth (300), 
 | 
                Height = Application.GetRealHeight (260), 
 | 
                UnSelectedImagePath = "PadAdding/Day.png", 
 | 
                SelectedImagePath = "PadAdding/DayOn.png", 
 | 
                SelectedTextColor = SkinStyle.Current.SelectedColor, 
 | 
                TextColor = SkinStyle.Current.TextColor1, 
 | 
                TextSize = 16, 
 | 
                TextID = R.MyInternationalizationString.Day, 
 | 
                Padding = new Padding(40,0,0,0), 
 | 
            }; 
 | 
            if (fh.TemperatureType == 2) { 
 | 
                FH_Day.IsSelected = true; 
 | 
            } else { 
 | 
                FH_Day.IsSelected = false; 
 | 
            } 
 | 
            FHTemperatrueTypeView.AddChidren (FH_Day); 
 | 
  
 | 
            FH_Night = new Button () { 
 | 
                X = FH_Day.Right + Application.GetRealWidth (9), 
 | 
                Y = Application.GetRealHeight (100), 
 | 
                Width = Application.GetRealWidth (300), 
 | 
                Height = Application.GetRealHeight (260), 
 | 
                UnSelectedImagePath = "PadAdding/AtNight.png", 
 | 
                SelectedImagePath = "PadAdding/AtNightOn.png", 
 | 
                TextID = R.MyInternationalizationString.AtNight, 
 | 
                SelectedTextColor = SkinStyle.Current.SelectedColor, 
 | 
                TextColor = SkinStyle.Current.TextColor1, 
 | 
                TextSize = 16, 
 | 
                Padding = new Padding (40,0,0,0), 
 | 
            }; 
 | 
            if (fh.TemperatureType == 3) { 
 | 
                FH_Night.IsSelected = true; 
 | 
            } else { 
 | 
                FH_Night.IsSelected = false; 
 | 
            } 
 | 
            FHTemperatrueTypeView.AddChidren (FH_Night); 
 | 
  
 | 
            FH_Common = new Button () { 
 | 
                X = FH_Night.Right + Application.GetRealWidth (9), 
 | 
                Y = Application.GetRealHeight (100), 
 | 
                Width = Application.GetRealWidth (300), 
 | 
                Height = Application.GetRealHeight (260), 
 | 
                UnSelectedImagePath = "PadAdding/Ordinary.png", 
 | 
                SelectedImagePath = "PadAdding/OrdinaryOn.png", 
 | 
                TextID = R.MyInternationalizationString.Ordinary, 
 | 
                Padding = new Padding (40,0,0,0), 
 | 
                SelectedTextColor = SkinStyle.Current.SelectedColor, 
 | 
                TextColor = SkinStyle.Current.TextColor1, 
 | 
                TextSize = 16, 
 | 
            }; 
 | 
            if (fh.TemperatureType == 1) { 
 | 
                FH_Common.IsSelected = true; 
 | 
            } else { 
 | 
                FH_Common.IsSelected = false; 
 | 
            } 
 | 
            FHTemperatrueTypeView.AddChidren (FH_Common); 
 | 
  
 | 
            Go_away = new Button () { 
 | 
                X = FH_Common.Right + Application.GetRealWidth (9), 
 | 
                Y = Application.GetRealHeight (100), 
 | 
                Width = Application.GetRealWidth (300), 
 | 
                Height = Application.GetRealHeight (260), 
 | 
                UnSelectedImagePath = "PadAdding/GoAway.png", 
 | 
                SelectedImagePath = "PadAdding/GoAwayOn.png", 
 | 
                TextID = R.MyInternationalizationString.GoAway, 
 | 
                Padding = new Padding (40,0,0,0), 
 | 
                SelectedTextColor = SkinStyle.Current.SelectedColor, 
 | 
                TextColor = SkinStyle.Current.TextColor1, 
 | 
                TextSize = 16, 
 | 
            }; 
 | 
            if (fh.TemperatureType == 4) { 
 | 
                Go_away.IsSelected = true; 
 | 
            } else { 
 | 
                Go_away.IsSelected = false; 
 | 
            } 
 | 
            FHTemperatrueTypeView.AddChidren (Go_away); 
 | 
  
 | 
            FH_Auto = new Button () { 
 | 
                X = Go_away.Right + Application.GetRealWidth (9), 
 | 
                Y = Application.GetRealHeight (100), 
 | 
                Width = Application.GetRealWidth (300), 
 | 
                Height = Application.GetRealHeight (260), 
 | 
                UnSelectedImagePath = "PadAdding/Automatic.png", 
 | 
                SelectedImagePath = "PadAdding/AutomaticOn.png", 
 | 
                TextID = R.MyInternationalizationString.Timer, 
 | 
                Padding = new Padding (40,0,0,0), 
 | 
                SelectedTextColor = SkinStyle.Current.SelectedColor, 
 | 
                TextColor = SkinStyle.Current.TextColor1, 
 | 
                TextSize = 16, 
 | 
            }; 
 | 
            if (fh.TemperatureType == 5) { 
 | 
                FH_Auto.IsSelected = true; 
 | 
            } else { 
 | 
                FH_Auto.IsSelected = false; 
 | 
            } 
 | 
            FHTemperatrueTypeView.AddChidren (FH_Auto); 
 | 
  
 | 
            FH_Day.MouseDownEventHandler += (sender, e) => { 
 | 
                if (btnFHSwitch.IsSelected == false) { 
 | 
                    return; 
 | 
                } 
 | 
                FH_Day.IsSelected = true; 
 | 
            }; 
 | 
            FH_Day.MouseUpEventHandler += (sender, e) => { 
 | 
                if (btnFHSwitch.IsSelected == false) { 
 | 
                    return; 
 | 
                } 
 | 
                FH_Day.IsSelected = true; 
 | 
                FH_Common.IsSelected = false; 
 | 
                FH_Night.IsSelected = false; 
 | 
                FH_Auto.IsSelected = false; 
 | 
                Go_away.IsSelected = false; 
 | 
                fh.TemperatureType = 2; 
 | 
                System.Threading.Tasks.Task.Run (() => { 
 | 
                    fh = fh.Serverx_FH_CMD (FoolHeat.CommandType.TemperatrueMode); 
 | 
                    Application.RunOnMainThread (() => { 
 | 
                        btnSetTemperature.Text = fh.WorkingTemperature + "°C"; 
 | 
                        VertTempSeekBar.Progress = fh.WorkingTemperature - 5; 
 | 
                    }); 
 | 
                }); 
 | 
            }; 
 | 
  
 | 
            FH_Night.MouseDownEventHandler += (sender, e) => { 
 | 
                if (btnFHSwitch.IsSelected == false) { 
 | 
                    return; 
 | 
                } 
 | 
                FH_Night.IsSelected = true; 
 | 
            }; 
 | 
            FH_Night.MouseUpEventHandler += (sender, e) => { 
 | 
                if (btnFHSwitch.IsSelected == false) { 
 | 
                    return; 
 | 
                } 
 | 
                FH_Common.IsSelected = false; 
 | 
                FH_Night.IsSelected = true; 
 | 
                FH_Auto.IsSelected = false; 
 | 
                FH_Day.IsSelected = false; 
 | 
                Go_away.IsSelected = false; 
 | 
                fh.TemperatureType = 3; 
 | 
                System.Threading.Tasks.Task.Run (() => { 
 | 
                    fh = fh.Serverx_FH_CMD (FoolHeat.CommandType.TemperatrueMode); 
 | 
                    Application.RunOnMainThread (() => { 
 | 
                        btnSetTemperature.Text = fh.WorkingTemperature + "°C"; 
 | 
                        VertTempSeekBar.Progress = fh.WorkingTemperature - 5; 
 | 
                    }); 
 | 
                }); 
 | 
            }; 
 | 
            Go_away.MouseDownEventHandler += (sender, e) => { 
 | 
                if (btnFHSwitch.IsSelected == false) { 
 | 
                    return; 
 | 
                } 
 | 
                Go_away.IsSelected = true; 
 | 
            }; 
 | 
            Go_away.MouseUpEventHandler += (sender, e) => { 
 | 
                if (btnFHSwitch.IsSelected == false) { 
 | 
                    return; 
 | 
                } 
 | 
                FH_Common.IsSelected = false; 
 | 
                Go_away.IsSelected = true; 
 | 
                FH_Night.IsSelected = false; 
 | 
                FH_Day.IsSelected = false; 
 | 
                FH_Auto.IsSelected = false; 
 | 
                fh.TemperatureType = 4; 
 | 
                System.Threading.Tasks.Task.Run (() => { 
 | 
                    fh = fh.Serverx_FH_CMD (FoolHeat.CommandType.TemperatrueMode); 
 | 
                    Application.RunOnMainThread (() => { 
 | 
                        btnSetTemperature.Text = fh.WorkingTemperature + "°C"; 
 | 
                        VertTempSeekBar.Progress = fh.WorkingTemperature - 5; 
 | 
                    }); 
 | 
                }); 
 | 
            }; 
 | 
            FH_Common.MouseDownEventHandler += (sender, e) => { 
 | 
                if (btnFHSwitch.IsSelected == false) { 
 | 
                    return; 
 | 
                } 
 | 
                FH_Common.IsSelected = true; 
 | 
            }; 
 | 
            FH_Common.MouseUpEventHandler += (sender, e) => { 
 | 
                if (btnFHSwitch.IsSelected == false) { 
 | 
                    return; 
 | 
                } 
 | 
                FH_Auto.IsSelected = false; 
 | 
                FH_Common.IsSelected = true; 
 | 
                FH_Night.IsSelected = false; 
 | 
                FH_Day.IsSelected = false; 
 | 
                Go_away.IsSelected = false; 
 | 
                fh.TemperatureType = 1; 
 | 
                System.Threading.Tasks.Task.Run (() => { 
 | 
                    fh = fh.Serverx_FH_CMD (FoolHeat.CommandType.TemperatrueMode); 
 | 
                    Application.RunOnMainThread (() => { 
 | 
                        btnSetTemperature.Text = fh.WorkingTemperature + "°C"; 
 | 
                        VertTempSeekBar.Progress = fh.WorkingTemperature - 5; 
 | 
                    }); 
 | 
                }); 
 | 
            }; 
 | 
            FH_Auto.MouseDownEventHandler += (sender, e) => { 
 | 
                if (btnFHSwitch.IsSelected == false) { 
 | 
                    return; 
 | 
                } 
 | 
                FH_Auto.IsSelected = true; 
 | 
            }; 
 | 
            FH_Auto.MouseUpEventHandler += (sender, e) => { 
 | 
                if (btnFHSwitch.IsSelected == false) { 
 | 
                    return; 
 | 
                } 
 | 
                FH_Common.IsSelected = false; 
 | 
                FH_Night.IsSelected = false; 
 | 
                FH_Day.IsSelected = false; 
 | 
                Go_away.IsSelected = false; 
 | 
                FH_Auto.IsSelected = true; 
 | 
                fh.TemperatureType = 5; 
 | 
                System.Threading.Tasks.Task.Run (() => { 
 | 
                    fh = fh.Serverx_FH_CMD (FoolHeat.CommandType.TemperatrueMode); 
 | 
                    Application.RunOnMainThread (() => { 
 | 
                        btnSetTemperature.Text = fh.WorkingTemperature + "°C"; 
 | 
                        VertTempSeekBar.Progress = fh.WorkingTemperature - 5; 
 | 
                    }); 
 | 
                }); 
 | 
            }; 
 | 
            #endregion 
 | 
  
 | 
            readStatus (); 
 | 
        } 
 | 
  
 | 
        /// <summary> 
 | 
        /// 读取设备状态 
 | 
        /// </summary> 
 | 
        void readStatus () 
 | 
        { 
 | 
            System.Threading.Tasks.Task.Run (() => { 
 | 
                if (fh.LastUpdateTime.AddMinutes (Common.Time) <= DateTime.Now) { 
 | 
                     if (fh.Type == DeviceType.FoolHeatPanel) { 
 | 
                        Control.ControlBytesSend (Command.ReadInstructionPanelKey, fh.SubnetID, fh.DeviceID, new byte [] { 20, fh.LoopID, fh.LoopID }); 
 | 
                        Control.ControlBytesSend (Command.ReadInstructionPanelKey, fh.SubnetID, fh.DeviceID, new byte [] { 21, fh.LoopID, fh.LoopID }); 
 | 
                        Control.ControlBytesSend (Command.ReadInstructionPanelKey, fh.SubnetID, fh.DeviceID, new byte [] { 24, fh.LoopID, fh.LoopID }); 
 | 
                        Control.ControlBytesSend (Command.ReadInstructionPanelKey, fh.SubnetID, fh.DeviceID, new byte [] { 25, fh.LoopID, fh.LoopID }); 
 | 
                        Control.ControlBytesSend (Command.ReadInstructionPanelKey, fh.SubnetID, fh.DeviceID, new byte [] { 26, fh.LoopID, fh.LoopID }); 
 | 
                        Control.ControlBytesSend (Command.ReadInstructionPanelKey, fh.SubnetID, fh.DeviceID, new byte [] { 27, fh.LoopID, fh.LoopID }); 
 | 
                        Control.ControlBytesSend (Command.ReadInstructionPanelKey, fh.SubnetID, fh.DeviceID, new byte [] { 28, fh.LoopID, fh.LoopID }); 
 | 
                    } else if (fh.Type == DeviceType.FoolHeat) { 
 | 
                        fh = fh.Serverx_FH_CMD (FoolHeat.CommandType.Read); 
 | 
                    } 
 | 
                    UpdateStatus (fh); 
 | 
                } 
 | 
            }); 
 | 
        } 
 | 
    } 
 | 
} 
 |