//初始化UI
        private void init()
        {
            try
            {
                CommunicationStatus.SetTitleName("Communication Status", "On", "Off");
                ControlStatus.SetTitleName("Control Status", "Online Remote", "Online Local", "Offline");
                TSCStatus.SetTitleName("TSC Status", "Auto", "Pause");

                CommunicationStatus.Button1.Click += Button_Click;
                CommunicationStatus.Button2.Click += Button_Click;
                ControlStatus.Button1.Click       += Button_Click;
                ControlStatus.Button2.Click       += Button_Click;
                ControlStatus.Button3.Click       += Button_Click;
                TSCStatus.Button1.Click           += Button_Click;
                TSCStatus.Button2.Click           += Button_Click;
                ObjCacheManager_ConnectionInfo_update(null, null);
                ObjCacheManager_OnlineCheckInfo_update(null, null);
                ObjCacheManager_PingCheckInfo_update(null, null);
            }
            catch (Exception ex)
            {
                logger.Error(ex, "Exception");
            }
        }
        private void ObjCacheManager_ConnectionInfo_update(object sender, EventArgs e)
        {
            bool   TSCstat_Color       = false;
            string TSCstat_Display     = string.Empty;
            bool   SECSstat_Color      = false;
            string SECSstat_Display    = string.Empty;
            bool   Controlstat_Color   = false;
            string Controlstat_Display = string.Empty;
            ALINE  aLINE = app.ObjCacheManager.GetLine();

            try
            {
                switch (aLINE.Secs_Link_Stat)
                {
                case SCAppConstants.LinkStatus.LinkOK:
                    SECSstat_Color = true;
                    //SECSstat_Display = BCAppConstants.SECSLinkDisplay.Link;
                    SECSstat_Display = "On";
                    Adapter.BeginInvoke(new SendOrPostCallback((o1) =>
                    {
                        CommunicationStatus.Button1.IsEnabled = false;
                        CommunicationStatus.Button2.IsEnabled = true;
                    }), null);
                    break;

                case SCAppConstants.LinkStatus.LinkFail:
                    SECSstat_Color = false;
                    //SECSstat_Display = BCAppConstants.SECSLinkDisplay.NotLink;
                    SECSstat_Display = "Off";
                    Adapter.BeginInvoke(new SendOrPostCallback((o1) =>
                    {
                        CommunicationStatus.Button1.IsEnabled = true;
                        CommunicationStatus.Button2.IsEnabled = false;
                    }), null);
                    break;
                }

                switch (aLINE.Host_Control_State)
                {
                case SCAppConstants.LineHostControlState.HostControlState.On_Line_Remote:
                    Controlstat_Color   = true;
                    Controlstat_Display = BCAppConstants.HostModeDisplay.OnlineRemote;
                    Adapter.BeginInvoke(new SendOrPostCallback((o1) =>
                    {
                        ControlStatus.Button1.IsEnabled = false;
                        ControlStatus.Button2.IsEnabled = true;
                        ControlStatus.Button3.IsEnabled = true;
                        TSCStatus.Button1.IsEnabled     = true;
                        TSCStatus.Button2.IsEnabled     = true;
                    }), null);
                    break;

                case SCAppConstants.LineHostControlState.HostControlState.On_Line_Local:
                    Controlstat_Color   = true;
                    Controlstat_Display = BCAppConstants.HostModeDisplay.OnlineLocal;
                    Adapter.BeginInvoke(new SendOrPostCallback((o1) =>
                    {
                        ControlStatus.Button1.IsEnabled = true;
                        ControlStatus.Button2.IsEnabled = false;
                        ControlStatus.Button3.IsEnabled = true;
                        TSCStatus.Button1.IsEnabled     = true;
                        TSCStatus.Button2.IsEnabled     = true;
                    }), null);
                    break;

                case SCAppConstants.LineHostControlState.HostControlState.EQ_Off_line:
                    Controlstat_Color   = false;
                    Controlstat_Display = BCAppConstants.HostModeDisplay.Offline;
                    Adapter.BeginInvoke(new SendOrPostCallback((o1) =>
                    {
                        ControlStatus.Button1.IsEnabled = true;
                        ControlStatus.Button2.IsEnabled = true;
                        ControlStatus.Button3.IsEnabled = false;
                        TSCStatus.Button1.IsEnabled     = false;
                        TSCStatus.Button2.IsEnabled     = false;
                    }), null);
                    break;
                }

                switch (aLINE.SCStats)
                {
                case TSCState.AUTO:
                    TSCstat_Color   = true;
                    TSCstat_Display = BCAppConstants.TSCStateDisplay.Auto;
                    Adapter.BeginInvoke(new SendOrPostCallback((o1) =>
                    {
                        TSCStatus.Button1.IsEnabled = false;
                        TSCStatus.Button2.IsEnabled = true;
                    }), null);
                    break;

                case TSCState.NONE:
                    TSCstat_Color   = false;
                    TSCstat_Display = BCAppConstants.TSCStateDisplay.None;
                    Adapter.BeginInvoke(new SendOrPostCallback((o1) =>
                    {
                        TSCStatus.Button1.IsEnabled = false;
                        TSCStatus.Button2.IsEnabled = true;
                    }), null);
                    break;

                case TSCState.PAUSED:
                    TSCstat_Color   = false;
                    TSCstat_Display = BCAppConstants.TSCStateDisplay.Pause;
                    Adapter.BeginInvoke(new SendOrPostCallback((o1) =>
                    {
                        //TSCStatus.Button1.IsEnabled = true;
                        TSCStatus.Button2.IsEnabled = false;
                    }), null);
                    break;

                case TSCState.PAUSING:
                    TSCstat_Color   = false;
                    TSCstat_Display = BCAppConstants.TSCStateDisplay.Pausing;
                    Adapter.BeginInvoke(new SendOrPostCallback((o1) =>
                    {
                        TSCStatus.Button1.IsEnabled = false;
                        TSCStatus.Button2.IsEnabled = false;
                    }), null);
                    break;

                case TSCState.TSC_INIT:
                    TSCstat_Color   = false;
                    TSCstat_Display = BCAppConstants.TSCStateDisplay.Init;
                    Adapter.BeginInvoke(new SendOrPostCallback((o1) =>
                    {
                        TSCStatus.Button1.IsEnabled = false;
                        TSCStatus.Button2.IsEnabled = false;
                    }), null);
                    break;
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex, "Exception");
            }
            CommunicationStatus.SetConnectSignal(SECSstat_Display, SECSstat_Color);
            ControlStatus.SetConnSignal(Controlstat_Display, Controlstat_Color);
            TSCStatus.SetConnectSignal(TSCstat_Display, TSCstat_Color);
        }