wxr
2022-05-17 4c586bb23cdcae56ae4e4c62e90e148dc10b9d90
HDL_ON/UI/UI2/FuntionControlView/Panel/PanelHelpPage.cs
New file
@@ -0,0 +1,142 @@
using System;
using HDL_ON.Entity;
using HDL_ON.Stan;
using HDL_ON.UI.CSS;
using Shared;
namespace HDL_ON.UI.UI2.FuntionControlView.Panel
{
    public class PanelHelpPage : DeviceFunctionCardCommonForm
    {
        #region ■ 变量声明___________________________
        /// <summary>
        /// 图标
        /// </summary>
        private IconViewControl btnIcon = null;
        /// <summary>
        /// 文本控件
        /// </summary>
        private NormalViewControl btnSuctionView = null;
        #endregion
        #region ■ 初始化_____________________________
        /// <summary>
        /// 初始化白色区域的内容
        /// </summary>
        public override void InitFrameWhiteContent()
        {
            base.ShowColltionButton = false;
            base.SetTitleText(Language.StringByID(StringId.SmartPanel));
            //添加第二索引页
            this.AddSecondPage();
            //初始化第一个索引页的内容
            this.InitFrameWhiteContent1();
            //初始化第二个索引页的内容
            this.InitFrameWhiteContent2();
            //刷新界面状态
            this.RefreshFormStatu();
            //读取状态
            new System.Threading.Thread(() =>
            {
                DriverLayer.Control.Ins.SendReadCommand(device);
            })
            { IsBackground = true }.Start();
        }
        /// <summary>
        /// 初始化第一个索引页的内容
        /// </summary>
        private void InitFrameWhiteContent1()
        {
            btnIcon = new IconViewControl(198)
            {
                Gravity = Gravity.CenterHorizontal,
                Y = Application.GetRealWidth(146),
                UnSelectedImagePath = "FunctionIcon/Panel/PanelHelpNormalBgIcon.png",
                SelectedImagePath = "FunctionIcon/Panel/PanelHelpAlarmBgIcon.png",
            };
            FrameWhiteCentet1.AddChidren(btnIcon);
            btnSuctionView = new NormalViewControl(300, 84, true)
            {
                Gravity = Gravity.CenterHorizontal,
                Y = btnIcon.Bottom,
                TextAlignment = TextAlignment.Center,
                TextSize = CSS_FontSize.TextFontSize,
                TextColor = CSS_Color.MainColor,
                SelectedTextColor = CSS_Color.AuxiliaryColor2,
                //BackgroundColor = 0xFFFF0000
            };
            FrameWhiteCentet1.AddChidren(btnSuctionView);
        }
        /// <summary>
        /// 初始化第二个索引页的内容
        /// </summary>
        private void InitFrameWhiteContent2()
        {
            var paging = new ArmSensorHistroyPaging(device);
            paging.InitFrame(FrameWhiteCentet2);
        }
        #endregion
        #region ■ 设备状态反馈_______________________
        /// <summary>
        /// 设备状态反馈
        /// </summary>
        /// <param name="i_LocalDevice"></param>
        public override void DeviceStatuPush(Function i_LocalDevice)
        {
            //不是同一个东西
            if (this.device.sid != i_LocalDevice.sid) { return; }
            //刷新界面状态
            this.RefreshFormStatu();
        }
        #endregion
        #region ■ 发送各种命令_______________________
        #endregion
        #region ■ 刷新界面状态_______________________
        /// <summary>
        /// 刷新界面状态
        /// </summary>
        private void RefreshFormStatu()
        {
            Application.RunOnMainThread(() => {
                var temp = device.attributes.Find((sta) => sta.key == "alarm_status");
                if (temp != null)
                {
                    if (temp.state == "alarm")
                    {
                        btnIcon.IsSelected = true;
                        btnSuctionView.TextID = StringId.InAlarming;
                        btnSuctionView.IsSelected = true;
                    }
                    else
                    {
                        btnIcon.IsSelected = false;
                        btnSuctionView.TextID = StringId.Monitoring;
                        btnSuctionView.IsSelected = false;
                    }
                }
            });
        }
        #endregion
        #region ■ 一般方法___________________________
        #endregion
    }
}