Use Control.GetType to check the control type : Control « GUI Windows Form « C# / C Sharp






Use Control.GetType to check the control type

 


using System;
using System.Drawing;
using System.Windows.Forms;
   
class CustomCheckBox: Form
{
     public static void Main()
     {
          Application.Run(new CustomCheckBox());
     }
     public CustomCheckBox()
     {
          int      cyText = Font.Height;
          int      cxText = cyText / 2;
          FontStyle[] afs = { FontStyle.Bold,      FontStyle.Italic, 
                              FontStyle.Underline, FontStyle.Strikeout };
   
          Label label    = new Label();
          label.Parent   = this;
          label.Text     = "Sample Text";
   
          for (int i = 0; i < 4; i++)
          {
               FontStyleCheckBox chkbox = new FontStyleCheckBox();
               chkbox.Parent = this;
               chkbox.Text = afs[i].ToString();
               chkbox.fontstyle = afs[i];
               chkbox.Location = new Point(2 * cxText, 
                                               (4 + 3 * i) * cyText / 2);
               chkbox.Size = new Size(12 * cxText, cyText);
               chkbox.CheckedChanged += new EventHandler(CheckBoxOnCheckedChanged);
          }
     }
     void CheckBoxOnCheckedChanged(object obj, EventArgs ea)
     {
          FontStyle fs = 0;
          Label     label = null;
   
          for (int i = 0; i < Controls.Count; i++)
          {
               Control ctrl = Controls[i];
   
               if (ctrl.GetType() == typeof(Label))
                    label = (Label) ctrl;
               else if (ctrl.GetType() == typeof(FontStyleCheckBox))
                    if (((FontStyleCheckBox) ctrl).Checked)
                         fs |= ((FontStyleCheckBox) ctrl).fontstyle;
          }
          label.Font = new Font(label.Font, fs);
     }
}
class FontStyleCheckBox: CheckBox
{
     public FontStyle fontstyle;
}

 








Related examples in the same category

1.Control Enabled
2.Control renderer Demo: CheckBoxControl renderer Demo: CheckBox
3.Add a Control ProgrammaticallyAdd a Control Programmatically
4.Change Image alignment inside a ControlChange Image alignment inside a Control
5.Get all controls on a form windowGet all controls on a form window
6.Control style: resize and redrawControl style: resize and redraw