/// <summary> /// Handle our object painting /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void HandlePaint(object sender, PaintEventArgs e) { Rectangle DrawRect = (Rectangle)sender.GetType().GetProperty("Bounds").GetValue(sender); Font DrawFont = (Font)sender.GetType().GetProperty("Font").GetValue(sender); e.Graphics.Clear(Color.Black); MM_Communication_Status.DrawStatus(e.Graphics, 2, (DrawRect.Width - 8) / 4, DrawRect.Height - 4, DrawRect.Width, Font); }
/// <summary> /// Initialize the communication viewer /// <param name="CommStatus">The key indicators text box showing the summary of communication status</param> /// </summary> public MM_Communication_Viewer(MM_Communication_Status CommStatus) { InitializeComponent(); this.CommStatus = CommStatus; this.CommStatus.Tag = this; this.Title = "Communications Status - " + Data_Integration.UserName.ToUpper() + " "; this.UIHelper = new MM_UserInterface_Helper(ssLower, ssMem, lblCPU); tcMain.DrawItem += new DrawItemEventHandler(tcMain_DrawItem); tcMain.DrawMode = TabDrawMode.OwnerDrawFixed; SetControls(); this.Visible = false; lvMacomberMapServers.GetType().GetProperty("DoubleBuffered", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).SetValue(lvMacomberMapServers, true, null); lvQueryStatus.GetType().GetProperty("DoubleBuffered", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).SetValue(lvQueryStatus, true, null); }
/// <summary> /// Create a seperate thread to run the communications viewer, and run it. /// </summary> /// <param name="CommStatus">The communications status label</param> /// <returns></returns> public static void CreateInstanceInSeparateThread(MM_Communication_Status CommStatus) { ThreadPool.QueueUserWorkItem(new WaitCallback(InstantiateForm), CommStatus); }