using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using DBFactory; using System.Net.Sockets; using System.Threading; using System.Linq; using Microsoft.VisualBasic; using System.IO.Ports; using System.Resources; using System.Drawing.Drawing2D; namespace wcfControlMonitorClient { /// /// Creator:Richard.liu /// 调度程序主窗口 /// public partial class FrmControlMonitor : WeifenLuo.WinFormsUI.Docking.DockContent { StringBuilder sql = new StringBuilder(); Model.MDevice devinfo; FrmDeviceStatus _deviceStatus = new FrmDeviceStatus(); DBFactory.DBOperator dbo = CStaticClass.dbo; DBFactory.DBOperator dbo1 = new DBFactory.DBOperator(); private static FrmControlMonitor _formInstance; public static FrmControlMonitor FormInstance { get { if (_formInstance == null) { _formInstance = new FrmControlMonitor(); } return _formInstance; } set { _formInstance = value; } } public FrmControlMonitor() { InitializeComponent(); //this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; ////设定字体大小为12px //this.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel, ((byte)(134))); _formInstance = this; } #region 方法 public void FlashPanit(string obj, bool visible) { this.Controls[obj].Visible = visible; } public void FlashPanit(string obj, Image backgroundImage) { this.Controls[obj].BackgroundImage = backgroundImage; } public void FlashPanit(string obj, ImageLayout backgroundImageLayout) { this.Controls[obj].BackgroundImageLayout = backgroundImageLayout; } public void FlashPanit(string obj, int top, int left) { this.Controls[obj].Top = top; this.Controls[obj].Left = left; } public void FlashPanit(string obj, string text, bool append) { if (append == true) { this.Controls[obj].Text += text; } else { this.Controls[obj].Text = text; } } public string GetObjectText(string obj) { return this.Controls[obj].Text; } public void MonitorRefresh(object dataSource) { #region Added by DingXiaoxu for Dock TaskList on 20101219 FrmTaskList.FormInstance.MonitorRefresh(dataSource); #endregion //this.dgvMonitor.DataSource = dataSource; ////20100108 //dataSource = null; } public void ManagerRefresh(object dataSource) { #region Added by DingXiaoxu for Dock TaskList on 20101219 FrmTaskList.FormInstance.ManagerRefresh(dataSource); #endregion //this.dgvManager.DataSource = dataSource; ////20100108 //dataSource = null; } #endregion protected override CreateParams CreateParams { get { CreateParams cp = base.CreateParams; cp.ExStyle |= 0x02000000;//WS_CLIPCHILDREN 两个窗体叠加时,重叠部分不重绘 return cp; } } private void timerFlash_Tick(object sender, EventArgs e) { string[] DS; char[] dd = new char[1] { '.' }; Model.MDevice device; TimeSpan ts = DateTime.Now.TimeOfDay; DataView dv; DataView dvJY; this.SuspendLayout(); //richard.liu20140806 try { if (CStaticClass.WCFOK == true) { sql.Remove(0, sql.Length);//richard.liu20140806 sql.Append("SELECT F_DeviceIndex FROM T_Base_Device WHERE (F_LockedState = - 1) "); dvJY = dbo.ExceSQL(sql.ToString()).Tables[0].DefaultView;//richard.liu20140806 dvJY.Sort = "F_DeviceIndex"; Button stack1 = bt1_stacker1; Button stack2 = bt1_stacker2; Button stack3 = bt1_stacker3; Button stack4 = bt1_stacker4; Button stack5 = bt1_stacker5; Button stack6 = bt1_stacker6; Button stack7 = bt1_stacker7; Button stack8 = bt1_stacker8; TextBox tw1n = tb1_stacker1_Near; TextBox tw2n = tb1_stacker2_Near; TextBox tw3n = tb1_stacker3_Near; TextBox tw4n = tb1_stacker4_Near; TextBox tw5n = tb1_stacker5_Near; TextBox tw6n = tb1_stacker6_Near; TextBox tw7n = tb1_stacker7_Near; TextBox tw8n = tb1_stacker8_Near; Panel pp = plAccessorial1; if (this.tabControl1.SelectedTab.Name == "tabPage1") { pp = plAccessorial1; stack1 = bt1_stacker1; stack2 = bt1_stacker2; stack3 = bt1_stacker3; stack4 = bt1_stacker4; tw1n = tb1_stacker1_Near; tw2n = tb1_stacker2_Near; tw3n = tb1_stacker3_Near; tw4n = tb1_stacker4_Near; } else if (this.tabControl1.SelectedTab.Name == "tabPage2") { pp = plAccessorial2; stack1 = bt2_stacker1; stack2 = bt2_stacker2; stack3 = bt2_stacker3; stack4 = bt2_stacker4; tw1n = tb2_stacker1_Near; tw2n = tb2_stacker2_Near; tw3n = tb2_stacker3_Near; tw4n = tb2_stacker4_Near; } else if (this.tabControl1.SelectedTab.Name == "tabPage4") { pp = plAccessorial4; } else if (this.tabControl1.SelectedTab.Name == "tabPage5") { pp = plAccessorial5; stack5 = bt1_stacker5; stack6 = bt1_stacker6; stack7 = bt1_stacker7; stack8 = bt1_stacker8; tw5n = tb1_stacker5_Near; tw6n = tb1_stacker6_Near; tw7n = tb1_stacker7_Near; tw8n = tb1_stacker8_Near; } else if (this.tabControl1.SelectedTab.Name == "tabPage6") { pp = plAccessorial6; stack5 = bt2_stacker5; stack6 = bt2_stacker6; stack7 = bt2_stacker7; stack8 = bt2_stacker8; tw5n = tb2_stacker5_Near; tw6n = tb2_stacker6_Near; tw7n = tb2_stacker7_Near; tw8n = tb2_stacker8_Near; } #region 每层楼监视画面 //foreach (Button ctrl in pp.Controls.OfType