Controls
 

A control is an object that can be drawn on to the Form to enable or enhance user interaction with the application. Examples of these controls, TextBoxes, Buttons, Labels, Radio Buttons, etc. All these Windows Controls are based on the Control class, the base class for all controls.


 


Design time controls


controls are visible to us and we can work with them by dragging and dropping them from the Toolbox and setting their properties in the properties window.

Runtime controls


controls are not visible while designing, are created and assigned properties in code and are visible only when the application is executed.


The Control Class


The Control class is in the System.Windows.Forms namespace. It is a base class for the Windows Controls. The class hierarchy is shown below.


Object
 MarshalByRefObject
  Component
   
Control
    ButtonBase, Etc, Etc
     Button, Etc, Etc


Main class is the Object class from which MarshalByRefObject class is derived and the Component class is derived from the MarshalByRefObject class and so on.


The properties of the Control object are summarized below. Properties are alphabetical as seen in the properties window.


 



















































































































Property Description
AllowDrop Indicates if the form can accept data that the user drags and drops into it
Anchor Gets/Sets which edges of the control are anchored
BackColor Gets/Sets the background color for the control
BackgroundImage Gets/Sets the background image in the control
Bottom Gets the distance bewteen the bottom of the control and the top of its container client area
Bounds Gets/Sets the controls bounding rectangle
CanFocus Returns a value specifying if the control can recieve focus
CanSelect Returns a value specifying if the control can be selected
Capture Gets/Sets a value specifying if the control has captured the mouse
CausesValidation Gets/Sets a value specfying if the control causes validation for all controls that require validation
ContainsFocus Returns a value specifying if the control has the input focus
ContextMenu Gets/Sets the shortcut menu for the control
Controls Gets/Sets the collection of controls contained within the control
Cursor Gets/Sets the cursor to be displayed when the user moves the mouse over the form
DataBindings Gets the data bindings for the control
Dock Gets/Sets which edge of the parent a control is docked to
Enabled Gets/Sets a value indicating if the control is enabled
Focused Returns a value specifying if the control has input focus
Font Gets/Sets the font for the control
ForeColor Gets/Sets the foreground color of the control
HasChildren Returns a value specifying if the control contains child controls
Height Gets/Sets the height of the control
Left Gets/Sets the x-coordinates of a control's left edge in pixels
Location Gets/Sets the co-ordinates of the upper-left corner of the control
Name Gets/Sets name for the control
Parent Gets/Sets the control's parent container
Right Returns the distance between the right edge of the control and the left edge of it's container
RightToLeft Gets/Sets the value indicating if the alignment of the control's elements is reversed to support right-to-left fonts
Size Gets/Sets size of the control in pixels
TabIndex Gets/Sets the tab order of this control in its container
TabStop Gets/Sets a value specifying if the user can tab to this control with the tab key
Tag Gets/Sets an object that contains data about the control
Text Gets/Sets the text for this control
Top Gets/Sets the top coordinates of the control
Visible Gets/Sets a value specifying if the control is visible
Width Gets/Sets the width of the control
 



Control Tab Order


To move focus from one control to other quickly using the keyboard we can use the Tab key. We can set the order in which the focus is transferred by setting the tab order. The tab order is the order in which controls on the form receive the focus and is specified by the TabIndex property. Lower values receive the focus first and proceed numerically through higher values. If there is a tie between TabIndex values, the focus first goes to the control that is closest to the front of the form.


We can also set the tab order graphically with Visual Studio by selecting Tab Index from the View menu. Boxes containing current tab order appear in each control.

(c) Shilpa Sayura Foundation 2006-2017