This topic has not yet been rated - Rate this topic

Control Class

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

Defines the base class for controls, which are components with visual representation.

System.Object
  System.MarshalByRefObject
    System.ComponentModel.Component
      System.Windows.Forms.Control
        More...

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

[ComVisibleAttribute(true)]
[ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)]
public class Control : Component, IDropTarget, 
	ISynchronizeInvoke, IWin32Window, IBindableComponent, IComponent, IDisposable

The Control type exposes the following members.

  Name Description
Public method Control() Initializes a new instance of the Control class with default settings.
Public method Control(String) Initializes a new instance of the Control class with specific text.
Public method Control(Control, String) Initializes a new instance of the Control class as a child control, with specific text.
Public method Control(String, Int32, Int32, Int32, Int32) Initializes a new instance of the Control class with specific text, size, and location.
Public method Control(Control, String, Int32, Int32, Int32, Int32) Initializes a new instance of the Control class as a child control, with specific text, size, and location.
Top
  Name Description
Public property AccessibilityObject Gets the AccessibleObject assigned to the control.
Public property AccessibleDefaultActionDescription Gets or sets the default action description of the control for use by accessibility client applications.
Public property AccessibleDescription Gets or sets the description of the control used by accessibility client applications.
Public property AccessibleName Gets or sets the name of the control used by accessibility client applications.
Public property AccessibleRole Gets or sets the accessible role of the control
Public property AllowDrop Gets or sets a value indicating whether the control can accept data that the user drags onto it.
Public property Anchor Gets or sets the edges of the container to which a control is bound and determines how a control is resized with its parent.
Public property AutoScrollOffset Gets or sets where this control is scrolled to in ScrollControlIntoView.
Public property AutoSize Infrastructure. This property is not relevant for this class.
Public property BackColor Gets or sets the background color for the control.
Public property BackgroundImage Gets or sets the background image displayed in the control.
Public property BackgroundImageLayout Gets or sets the background image layout as defined in the ImageLayout enumeration.
Public property BindingContext Gets or sets the BindingContext for the control.
Public property Bottom Gets the distance, in pixels, between the bottom edge of the control and the top edge of its container's client area.
Public property Bounds Gets or sets the size and location of the control including its nonclient elements, in pixels, relative to the parent control.
Protected property CanEnableIme Gets a value indicating whether the ImeMode property can be set to an active value, to enable IME support.
Public property CanFocus Gets a value indicating whether the control can receive focus.
Protected property CanRaiseEvents Determines if events can be raised on the control. (Overrides Component.CanRaiseEvents.)
Public property CanSelect Gets a value indicating whether the control can be selected.
Public property Capture Gets or sets a value indicating whether the control has captured the mouse.
Public property CausesValidation Gets or sets a value indicating whether the control causes validation to be performed on any controls that require validation when it receives focus.
Public property Static member CheckForIllegalCrossThreadCalls Gets or sets a value indicating whether to catch calls on the wrong thread that access a control's Handle property when an application is being debugged.
Public property ClientRectangle Gets the rectangle that represents the client area of the control.
Public property ClientSize Gets or sets the height and width of the client area of the control.
Public property CompanyName Gets the name of the company or creator of the application containing the control.
Public property Container Gets the IContainer that contains the Component. (Inherited from Component.)
Public property ContainsFocus Gets a value indicating whether the control, or one of its child controls, currently has the input focus.
Public property ContextMenu Gets or sets the shortcut menu associated with the control.
Public property ContextMenuStrip Gets or sets the ContextMenuStrip associated with this control.
Public property Controls Gets the collection of controls contained within the control.
Public property Created Gets a value indicating whether the control has been created.
Protected property CreateParams Gets the required creation parameters when the control handle is created.
Public property Cursor Gets or sets the cursor that is displayed when the mouse pointer is over the control.
Public property DataBindings Gets the data bindings for the control.
Public property Static member DefaultBackColor Gets the default background color of the control.
Protected property DefaultCursor Gets or sets the default cursor for the control.
Public property Static member DefaultFont Gets the default font of the control.
Public property Static member DefaultForeColor Gets the default foreground color of the control.
Protected property DefaultImeMode Gets the default Input Method Editor (IME) mode supported by the control.
Protected property DefaultMargin Gets the space, in pixels, that is specified by default between controls.
Protected property DefaultMaximumSize Gets the length and height, in pixels, that is specified as the default maximum size of a control.
Protected property DefaultMinimumSize Gets the length and height, in pixels, that is specified as the default minimum size of a control.
Protected property DefaultPadding Gets the internal spacing, in pixels, of the contents of a control.
Protected property DefaultSize Gets the default size of the control.
Protected property DesignMode Gets a value that indicates whether the Component is currently in design mode. (Inherited from Component.)
Public property DisplayRectangle Gets the rectangle that represents the display area of the control.
Public property Disposing Gets a value indicating whether the base Control class is in the process of disposing.
Public property Dock Gets or sets which control borders are docked to its parent control and determines how a control is resized with its parent.
Protected property DoubleBuffered Gets or sets a value indicating whether this control should redraw its surface using a secondary buffer to reduce or prevent flicker.
Public property Enabled Gets or sets a value indicating whether the control can respond to user interaction.
Protected property Events Gets the list of event handlers that are attached to this Component. (Inherited from Component.)
Public property Focused Gets a value indicating whether the control has input focus.
Public property Font Gets or sets the font of the text displayed by the control.
Protected property FontHeight Gets or sets the height of the font of the control.
Public property ForeColor Gets or sets the foreground color of the control.
Public property Handle Gets the window handle that the control is bound to.
Public property HasChildren Gets a value indicating whether the control contains one or more child controls.
Public property Height Gets or sets the height of the control.
Public property ImeMode Gets or sets the Input Method Editor (IME) mode of the control.
Protected property ImeModeBase Gets or sets the IME mode of a control.
Public property InvokeRequired Gets a value indicating whether the caller must call an invoke method when making method calls to the control because the caller is on a different thread than the one the control was created on.
Public property IsAccessible Gets or sets a value indicating whether the control is visible to accessibility applications.
Public property IsDisposed Gets a value indicating whether the control has been disposed of.
Public property IsHandleCreated Gets a value indicating whether the control has a handle associated with it.
Public property IsMirrored Gets a value indicating whether the control is mirrored.
Public property LayoutEngine Gets a cached instance of the control's layout engine.
Public property Left Gets or sets the distance, in pixels, between the left edge of the control and the left edge of its container's client area.
Public property Location Gets or sets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container.
Public property Margin Gets or sets the space between controls.
Public property MaximumSize Gets or sets the size that is the upper limit that GetPreferredSize can specify.
Public property MinimumSize Gets or sets the size that is the lower limit that GetPreferredSize can specify.
Public property Static member ModifierKeys Gets a value indicating which of the modifier keys (SHIFT, CTRL, and ALT) is in a pressed state.
Public property Static member MouseButtons Gets a value indicating which of the mouse buttons is in a pressed state.
Public property Static member MousePosition Gets the position of the mouse cursor in screen coordinates.
Public property Name Gets or sets the name of the control.
Public property Padding Gets or sets padding within the control.
Public property Parent Gets or sets the parent container of the control.
Public property PreferredSize Gets the size of a rectangular area into which the control can fit.
Public property ProductName Gets the product name of the assembly containing the control.
Public property ProductVersion Gets the version of the assembly containing the control.
Protected property Static member PropagatingImeMode Gets an object that represents a propagating IME mode.
Public property RecreatingHandle Gets a value indicating whether the control is currently re-creating its handle.
Public property Region Gets or sets the window region associated with the control.
Protected property RenderRightToLeft Obsolete. This property is now obsolete.
Protected property ResizeRedraw Gets or sets a value indicating whether the control redraws itself when resized.
Public property Right Gets the distance, in pixels, between the right edge of the control and the left edge of its container's client area.
Public property RightToLeft Gets or sets a value indicating whether control's elements are aligned to support locales using right-to-left fonts.
Protected property ScaleChildren Gets a value that determines the scaling of child controls.
Protected property ShowFocusCues Gets a value indicating whether the control should display focus rectangles.
Protected property ShowKeyboardCues Gets a value indicating whether the user interface is in the appropriate state to show or hide keyboard accelerators.
Public property Site Gets or sets the site of the control. (Overrides Component.Site.)
Public property Size Gets or sets the height and width of the control.
Public property TabIndex Gets or sets the tab order of the control within its container.
Public property TabStop Gets or sets a value indicating whether the user can give the focus to this control using the TAB key.
Public property Tag Gets or sets the object that contains data about the control.
Public property Text Gets or sets the text associated with this control.
Public property Top Gets or sets the distance, in pixels, between the top edge of the control and the top edge of its container's client area.
Public property TopLevelControl Gets the parent control that is not parented by another Windows Forms control. Typically, this is the outermost Form that the control is contained in.
Public property UseWaitCursor Gets or sets a value indicating whether to use the wait cursor for the current control and all child controls.
Public property Visible Gets or sets a value indicating whether the control and all its child controls are displayed.
Public property Width Gets or sets the width of the control.
Public property WindowTarget Infrastructure. This property is not relevant for this class.
Top
  Name Description
Protected method AccessibilityNotifyClients(AccessibleEvents, Int32) Notifies the accessibility client applications of the specified AccessibleEvents for the specified child control.
Protected method AccessibilityNotifyClients(AccessibleEvents, Int32, Int32) Notifies the accessibility client applications of the specified AccessibleEvents for the specified child control .
Public method BeginInvoke(Delegate) Executes the specified delegate asynchronously on the thread that the control's underlying handle was created on.
Public method BeginInvoke(Delegate, Object[]) Executes the specified delegate asynchronously with the specified arguments, on the thread that the control's underlying handle was created on.
Public method BringToFront Brings the control to the front of the z-order.
Public method Contains Retrieves a value indicating whether the specified control is a child of the control.
Protected method CreateAccessibilityInstance Creates a new accessibility object for the control.
Public method CreateControl Forces the creation of the visible control, including the creation of the handle and any visible child controls.
Protected method CreateControlsInstance Creates a new instance of the control collection for the control.
Public method CreateGraphics Creates the Graphics for the control.
Protected method CreateHandle Creates a handle for the control.
Public method CreateObjRef Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object. (Inherited from MarshalByRefObject.)
Protected method DefWndProc Sends the specified message to the default window procedure.
Protected method DestroyHandle Destroys the handle associated with the control.
Public method Dispose() Releases all resources used by the Component. (Inherited from Component.)
Protected method Dispose(Boolean) Releases the unmanaged resources used by the Control and its child controls and optionally releases the managed resources. (Overrides Component.Dispose(Boolean).)
Public method DoDragDrop Begins a drag-and-drop operation.
Public method DrawToBitmap Supports rendering to the specified bitmap.
Public method EndInvoke Retrieves the return value of the asynchronous operation represented by the IAsyncResult passed.
Public method Equals(Object) Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected method Finalize Releases unmanaged resources and performs other cleanup operations before the Component is reclaimed by garbage collection. (Inherited from Component.)
Public method FindForm Retrieves the form that the control is on.
Public method Focus Sets input focus to the control.
Public method Static member FromChildHandle Retrieves the control that contains the specified handle.
Public method Static member FromHandle Returns the control that is currently associated with the specified handle.
Protected method GetAccessibilityObjectById Retrieves the specified AccessibleObject.
Protected method GetAutoSizeMode Retrieves a value indicating how a control will behave when its AutoSize property is enabled.
Public method GetChildAtPoint(Point) Retrieves the child control that is located at the specified coordinates.
Public method GetChildAtPoint(Point, GetChildAtPointSkip) Retrieves the child control that is located at the specified coordinates, specifying whether to ignore child controls of a certain type.
Public method GetContainerControl Returns the next ContainerControl up the control's chain of parent controls.
Public method GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public method GetLifetimeService Retrieves the current lifetime service object that controls the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Public method GetNextControl Retrieves the next control forward or back in the tab order of child controls.
Public method GetPreferredSize Retrieves the size of a rectangular area into which a control can be fitted.
Protected method GetScaledBounds Retrieves the bounds within which the control is scaled.
Protected method GetService Returns an object that represents a service provided by the Component or by its Container. (Inherited from Component.)
Protected method GetStyle Retrieves the value of the specified control style bit for the control.
Protected method GetTopLevel Determines if the control is a top-level control.
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method Hide Conceals the control from the user.
Public method InitializeLifetimeService Obtains a lifetime service object to control the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Protected method InitLayout Called after the control has been added to another container.
Public method Invalidate() Invalidates the entire surface of the control and causes the control to be redrawn.
Public method Invalidate(Boolean) Invalidates a specific region of the control and causes a paint message to be sent to the control. Optionally, invalidates the child controls assigned to the control.
Public method Invalidate(Rectangle) Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control.
Public method Invalidate(Region) Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control.
Public method Invalidate(Rectangle, Boolean) Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control. Optionally, invalidates the child controls assigned to the control.
Public method Invalidate(Region, Boolean) Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control. Optionally, invalidates the child controls assigned to the control.
Public method Invoke(Delegate) Executes the specified delegate on the thread that owns the control's underlying window handle.
Public method Invoke(Delegate, Object[]) Executes the specified delegate, on the thread that owns the control's underlying window handle, with the specified list of arguments.
Protected method InvokeGotFocus Raises the GotFocus event for the specified control.
Protected method InvokeLostFocus Raises the LostFocus event for the specified control.
Protected method InvokeOnClick Raises the Click event for the specified control.
Protected method InvokePaint Raises the Paint event for the specified control.
Protected method InvokePaintBackground Raises the PaintBackground event for the specified control.
Protected method IsInputChar Determines if a character is an input character that the control recognizes.
Protected method IsInputKey Determines whether the specified key is a regular input key or a special key that requires preprocessing.
Public method Static member IsKeyLocked Determines whether the CAPS LOCK, NUM LOCK, or SCROLL LOCK key is in effect.
Public method Static member IsMnemonic Determines if the specified character is the mnemonic character assigned to the control in the specified string.
Protected method MemberwiseClone() Creates a shallow copy of the current Object. (Inherited from Object.)
Protected method MemberwiseClone(Boolean) Creates a shallow copy of the current MarshalByRefObject object. (Inherited from MarshalByRefObject.)
Protected method NotifyInvalidate Infrastructure. Raises the Invalidated event with a specified region of the control to invalidate.
Protected method OnAutoSizeChanged Raises the AutoSizeChanged event.
Protected method OnBackColorChanged Raises the BackColorChanged event.
Protected method OnBackgroundImageChanged Raises the BackgroundImageChanged event.
Protected method OnBackgroundImageLayoutChanged Raises the BackgroundImageLayoutChanged event.
Protected method OnBindingContextChanged Raises the BindingContextChanged event.
Protected method OnCausesValidationChanged Raises the CausesValidationChanged event.
Protected method OnChangeUICues Raises the ChangeUICues event.
Protected method OnClick Raises the Click event.
Protected method OnClientSizeChanged Raises the ClientSizeChanged event.
Protected method OnContextMenuChanged Raises the ContextMenuChanged event.
Protected method OnContextMenuStripChanged Raises the ContextMenuStripChanged event.
Protected method OnControlAdded Raises the ControlAdded event.
Protected method OnControlRemoved Raises the ControlRemoved event.
Protected method OnCreateControl Raises the CreateControl method.
Protected method OnCursorChanged Raises the CursorChanged event.
Protected method OnDockChanged Raises the DockChanged event.
Protected method OnDoubleClick Raises the DoubleClick event.
Protected method OnDragDrop Raises the DragDrop event.
Protected method OnDragEnter Raises the DragEnter event.
Protected method OnDragLeave Raises the DragLeave event.
Protected method OnDragOver Raises the DragOver event.
Protected method OnEnabledChanged Raises the EnabledChanged event.
Protected method OnEnter Raises the Enter event.
Protected method OnFontChanged Raises the FontChanged event.
Protected method OnForeColorChanged Raises the ForeColorChanged event.
Protected method OnGiveFeedback Raises the GiveFeedback event.
Protected method OnGotFocus Raises the GotFocus event.
Protected method OnHandleCreated Raises the HandleCreated event.
Protected method OnHandleDestroyed Raises the HandleDestroyed event.
Protected method OnHelpRequested Raises the HelpRequested event.
Protected method OnImeModeChanged Raises the ImeModeChanged event.
Protected method OnInvalidated Raises the Invalidated event.
Protected method OnKeyDown Raises the KeyDown event.
Protected method OnKeyPress Raises the KeyPress event.
Protected method OnKeyUp Raises the KeyUp event.
Protected method OnLayout Raises the Layout event.
Protected method OnLeave Raises the Leave event.
Protected method OnLocationChanged Raises the LocationChanged event.
Protected method OnLostFocus Raises the LostFocus event.
Protected method OnMarginChanged Raises the MarginChanged event.
Protected method OnMouseCaptureChanged Raises the MouseCaptureChanged event.
Protected method OnMouseClick Raises the MouseClick event.
Protected method OnMouseDoubleClick Raises the MouseDoubleClick event.
Protected method OnMouseDown Raises the MouseDown event.
Protected method OnMouseEnter Raises the MouseEnter event.
Protected method OnMouseHover Raises the MouseHover event.
Protected method OnMouseLeave Raises the MouseLeave event.
Protected method OnMouseMove Raises the MouseMove event.
Protected method OnMouseUp Raises the MouseUp event.
Protected method OnMouseWheel Raises the MouseWheel event.
Protected method OnMove Raises the Move event.
Protected method OnNotifyMessage Notifies the control of Windows messages.
Protected method OnPaddingChanged Raises the PaddingChanged event.
Protected method OnPaint Raises the Paint event.
Protected method OnPaintBackground Paints the background of the control.
Protected method OnParentBackColorChanged Raises the BackColorChanged event when the BackColor property value of the control's container changes.
Protected method OnParentBackgroundImageChanged Raises the BackgroundImageChanged event when the BackgroundImage property value of the control's container changes.
Protected method OnParentBindingContextChanged Raises the BindingContextChanged event when the BindingContext property value of the control's container changes.
Protected method OnParentChanged Raises the ParentChanged event.
Protected method OnParentCursorChanged Raises the CursorChanged event.
Protected method OnParentEnabledChanged Raises the EnabledChanged event when the Enabled property value of the control's container changes.
Protected method OnParentFontChanged Raises the FontChanged event when the Font property value of the control's container changes.
Protected method OnParentForeColorChanged Raises the ForeColorChanged event when the ForeColor property value of the control's container changes.
Protected method OnParentRightToLeftChanged Raises the RightToLeftChanged event when the RightToLeft property value of the control's container changes.
Protected method OnParentVisibleChanged Raises the VisibleChanged event when the Visible property value of the control's container changes.
Protected method OnPreviewKeyDown Raises the PreviewKeyDown event.
Protected method OnPrint Raises the Paint event.
Protected method OnQueryContinueDrag Raises the QueryContinueDrag event.
Protected method OnRegionChanged Raises the RegionChanged event.
Protected method OnResize Raises the Resize event.
Protected method OnRightToLeftChanged Raises the RightToLeftChanged event.
Protected method OnSizeChanged Raises the SizeChanged event.
Protected method OnStyleChanged Raises the StyleChanged event.
Protected method OnSystemColorsChanged Raises the SystemColorsChanged event.
Protected method OnTabIndexChanged Raises the TabIndexChanged event.
Protected method OnTabStopChanged Raises the TabStopChanged event.
Protected method OnTextChanged Raises the TextChanged event.
Protected method OnValidated Raises the Validated event.
Protected method OnValidating Raises the Validating event.
Protected method OnVisibleChanged Raises the VisibleChanged event.
Public method PerformLayout() Forces the control to apply layout logic to all its child controls.
Public method PerformLayout(Control, String) Forces the control to apply layout logic to all its child controls.
Public method PointToClient Computes the location of the specified screen point into client coordinates.
Public method PointToScreen Computes the location of the specified client point into screen coordinates.
Public method PreProcessControlMessage Preprocesses keyboard or input messages within the message loop before they are dispatched.
Public method PreProcessMessage Preprocesses keyboard or input messages within the message loop before they are dispatched.
Protected method ProcessCmdKey Processes a command key.
Protected method ProcessDialogChar Processes a dialog character.
Protected method ProcessDialogKey Processes a dialog key.
Protected method ProcessKeyEventArgs Processes a key message and generates the appropriate control events.
Protected method ProcessKeyMessage Processes a keyboard message.
Protected method ProcessKeyPreview Previews a keyboard message.
Protected method ProcessMnemonic Processes a mnemonic character.
Protected method RaiseDragEvent Infrastructure. Raises the appropriate drag event.
Protected method RaiseKeyEvent Infrastructure. Raises the appropriate key event.
Protected method RaiseMouseEvent Infrastructure. Raises the appropriate mouse event.
Protected method RaisePaintEvent Infrastructure. Raises the appropriate paint event.
Protected method RecreateHandle Forces the re-creation of the handle for the control.
Public method RectangleToClient Computes the size and location of the specified screen rectangle in client coordinates.
Public method RectangleToScreen Computes the size and location of the specified client rectangle in screen coordinates.
Protected method Static member ReflectMessage Reflects the specified message to the control that is bound to the specified handle.
Public method Refresh Forces the control to invalidate its client area and immediately redraw itself and any child controls.
Public method ResetBackColor Resets the BackColor property to its default value.
Public method ResetBindings Causes a control bound to the BindingSource to reread all the items in the list and refresh their displayed values.
Public method ResetCursor Resets the Cursor property to its default value.
Public method ResetFont Resets the Font property to its default value.
Public method ResetForeColor Resets the ForeColor property to its default value.
Public method ResetImeMode Resets the ImeMode property to its default value.
Protected method ResetMouseEventArgs Infrastructure. Resets the control to handle the MouseLeave event.
Public method ResetRightToLeft Resets the RightToLeft property to its default value.
Public method ResetText Resets the Text property to its default value.
Public method ResumeLayout() Resumes usual layout logic.
Public method ResumeLayout(Boolean) Resumes usual layout logic, optionally forcing an immediate layout of pending layout requests.
Protected method RtlTranslateAlignment(ContentAlignment) Converts the specified ContentAlignment to the appropriate ContentAlignment to support right-to-left text.
Protected method RtlTranslateAlignment(HorizontalAlignment) Converts the specified HorizontalAlignment to the appropriate HorizontalAlignment to support right-to-left text.
Protected method RtlTranslateAlignment(LeftRightAlignment) Converts the specified LeftRightAlignment to the appropriate LeftRightAlignment to support right-to-left text.
Protected method RtlTranslateContent Converts the specified ContentAlignment to the appropriate ContentAlignment to support right-to-left text.
Protected method RtlTranslateHorizontal Converts the specified HorizontalAlignment to the appropriate HorizontalAlignment to support right-to-left text.
Protected method RtlTranslateLeftRight Converts the specified LeftRightAlignment to the appropriate LeftRightAlignment to support right-to-left text.
Public method Scale(Single) Obsolete. Scales the control and any child controls.
Public method Scale(SizeF) Scales the control and all child controls by the specified scaling factor.
Public method Scale(Single, Single) Obsolete. Scales the entire control and any child controls.
Protected method ScaleControl Scales a control's location, size, padding and margin.
Protected method ScaleCore Infrastructure. This method is not relevant for this class.
Public method Select() Activates the control.
Protected method Select(Boolean, Boolean) Activates a child control. Optionally specifies the direction in the tab order to select the control from.
Public method SelectNextControl Activates the next control.
Public method SendToBack Sends the control to the back of the z-order.
Protected method SetAutoSizeMode Sets a value indicating how a control will behave when its AutoSize property is enabled.
Public method SetBounds(Int32, Int32, Int32, Int32) Sets the bounds of the control to the specified location and size.
Public method SetBounds(Int32, Int32, Int32, Int32, BoundsSpecified) Sets the specified bounds of the control to the specified location and size.
Protected method SetBoundsCore Performs the work of setting the specified bounds of this control.
Protected method SetClientSizeCore Sets the size of the client area of the control.
Protected method SetStyle Sets a specified ControlStyles flag to either true or false.
Protected method SetTopLevel Sets the control as the top-level control.
Protected method SetVisibleCore Sets the control to the specified visible state.
Public method Show Displays the control to the user.
Protected method SizeFromClientSize Determines the size of the entire control from the height and width of its client area.
Public method SuspendLayout Temporarily suspends the layout logic for the control.
Public method ToString Returns a String containing the name of the Component, if any. This method should not be overridden. (Inherited from Component.)
Public method Update Causes the control to redraw the invalidated regions within its client area.
Protected method UpdateBounds() Updates the bounds of the control with the current size and location.
Protected method UpdateBounds(Int32, Int32, Int32, Int32) Updates the bounds of the control with the specified size and location.
Protected method UpdateBounds(Int32, Int32, Int32, Int32, Int32, Int32) Updates the bounds of the control with the specified size, location, and client size.
Protected method UpdateStyles Forces the assigned styles to be reapplied to the control.
Protected method UpdateZOrder Updates the control in its parent's z-order.
Protected method WndProc Processes Windows messages.
Top
  Name Description
Public event AutoSizeChanged Infrastructure. This event is not relevant for this class.
Public event BackColorChanged Occurs when the value of the BackColor property changes.
Public event BackgroundImageChanged Occurs when the value of the BackgroundImage property changes.
Public event BackgroundImageLayoutChanged Occurs when the BackgroundImageLayout property changes.
Public event BindingContextChanged Occurs when the value of the BindingContext property changes.
Public event CausesValidationChanged Occurs when the value of the CausesValidation property changes.
Public event ChangeUICues Occurs when the focus or keyboard user interface (UI) cues change.
Public event Click Occurs when the control is clicked.
Public event ClientSizeChanged Occurs when the value of the ClientSize property changes.
Public event ContextMenuChanged Occurs when the value of the ContextMenu property changes.
Public event ContextMenuStripChanged Occurs when the value of the ContextMenuStrip property changes.
Public event ControlAdded Occurs when a new control is added to the Control.ControlCollection.
Public event ControlRemoved Occurs when a control is removed from the Control.ControlCollection.
Public event CursorChanged Occurs when the value of the Cursor property changes.
Public event Disposed Occurs when the component is disposed by a call to the Dispose method. (Inherited from Component.)
Public event DockChanged Occurs when the value of the Dock property changes.
Public event DoubleClick Occurs when the control is double-clicked.
Public event DragDrop Occurs when a drag-and-drop operation is completed.
Public event DragEnter Occurs when an object is dragged into the control's bounds.
Public event DragLeave Occurs when an object is dragged out of the control's bounds.
Public event DragOver Occurs when an object is dragged over the control's bounds.
Public event EnabledChanged Occurs when the Enabled property value has changed.
Public event Enter Occurs when the control is entered.
Public event FontChanged Occurs when the Font property value changes.
Public event ForeColorChanged Occurs when the ForeColor property value changes.
Public event GiveFeedback Occurs during a drag operation.
Public event GotFocus Occurs when the control receives focus.
Public event HandleCreated Occurs when a handle is created for the control.
Public event HandleDestroyed Occurs when the control's handle is in the process of being destroyed.
Public event HelpRequested Occurs when the user requests help for a control.
Public event ImeModeChanged Occurs when the ImeMode property has changed.
Public event Invalidated Occurs when a control's display requires redrawing.
Public event KeyDown Occurs when a key is pressed while the control has focus.
Public event KeyPress Occurs when a key is pressed while the control has focus.
Public event KeyUp Occurs when a key is released while the control has focus.
Public event Layout Occurs when a control should reposition its child controls.
Public event Leave Occurs when the input focus leaves the control.
Public event LocationChanged Occurs when the Location property value has changed.
Public event LostFocus Occurs when the control loses focus.
Public event MarginChanged Occurs when the control's margin changes.
Public event MouseCaptureChanged Occurs when the control loses mouse capture.
Public event MouseClick Occurs when the control is clicked by the mouse.
Public event MouseDoubleClick Occurs when the control is double clicked by the mouse.
Public event MouseDown Occurs when the mouse pointer is over the control and a mouse button is pressed.
Public event MouseEnter Occurs when the mouse pointer enters the control.
Public event MouseHover Occurs when the mouse pointer rests on the control.
Public event MouseLeave Occurs when the mouse pointer leaves the control.
Public event MouseMove Occurs when the mouse pointer is moved over the control.
Public event MouseUp Occurs when the mouse pointer is over the control and a mouse button is released.
Public event MouseWheel Occurs when the mouse wheel moves while the control has focus.
Public event Move Occurs when the control is moved.
Public event PaddingChanged Occurs when the control's padding changes.
Public event Paint Occurs when the control is redrawn.
Public event ParentChanged Occurs when the Parent property value changes.
Public event PreviewKeyDown Occurs before the KeyDown event when a key is pressed while focus is on this control.
Public event QueryAccessibilityHelp Occurs when AccessibleObject is providing help to accessibility applications.
Public event QueryContinueDrag Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled.
Public event RegionChanged Occurs when the value of the Region property changes.
Public event Resize Occurs when the control is resized.
Public event RightToLeftChanged Occurs when the RightToLeft property value changes.
Public event SizeChanged Occurs when the Size property value changes.
Public event StyleChanged Occurs when the control style changes.
Public event SystemColorsChanged Occurs when the system colors change.
Public event TabIndexChanged Occurs when the TabIndex property value changes.
Public event TabStopChanged Occurs when the TabStop property value changes.
Public event TextChanged Occurs when the Text property value changes.
Public event Validated Occurs when the control is finished validating.
Public event Validating Occurs when the control is validating.
Public event VisibleChanged Occurs when the Visible property value changes.
Top
  Name Description
Explicit interface implemetation Private method IDropTarget.OnDragDrop Infrastructure. Raises the DragDrop event.
Explicit interface implemetation Private method IDropTarget.OnDragEnter Infrastructure. Raises the DragEnter event.
Explicit interface implemetation Private method IDropTarget.OnDragLeave Infrastructure. Raises the DragLeave event.
Explicit interface implemetation Private method IDropTarget.OnDragOver Infrastructure. Raises the DragOver event.
Top

To create your own control class, inherit from the UserControl, Control classes, or from the other Windows Forms provided controls. For more information about authoring custom controls, see Developing Custom Windows Forms Controls with the .NET Framework.

The Control class implements very basic functionality required by classes that display information to the user. It handles user input through the keyboard and pointing devices. It handles message routing and security. It defines the bounds of a control (its position and size), although it does not implement painting. It provides a window handle (hWnd).

Windows Forms controls use ambient properties so child controls can appear like their surrounding environment. An ambient property is a control property that, if not set, is retrieved from the parent control. If the control does not have a Parent, and the property is not set, the control attempts to determine the value of the ambient property through the Site property. If the control is not sited, if the site does not support ambient properties, or if the property is not set on the AmbientProperties, the control uses its own default values. Typically, an ambient property represents a characteristic of a control, such as BackColor, that is communicated to a child control. For example, a Button will have the same BackColor as its parent Form by default. Ambient properties provided by the Control class include: Cursor, Font, BackColor, ForeColor, and RightToLeft.

Note Note

To make your Windows Forms application support Windows XP visual styles, be sure to set the FlatStyle property to System and include a manifest with your executable. A manifest is an XML file that is included either as a resource within your application executable or as a separate file that resides in the same directory as the executable file. For an example of a manifest, see the Example section of the FlatStyle enumeration. For more information about using the visual styles available in Windows XP, see "Using Windows XP Visual Styles" in the MSDN library at http://msdn.microsoft.com/library.

Windows Forms has accessibility support built in, and provides information about your application that enables it to work with accessibility client applications such as screen enlarger and reviewer utilities, voice input utilities, on-screen keyboards, alternative input devices, and keyboard enhancement utilities. Sometimes you will want to provide additional information to accessibility client applications. There are two ways of providing this additional information. You can set the AccessibleName, AccessibleDescription, AccessibleDefaultActionDescription, and AccessibleRole property values, which will be reported to accessibility client applications. This method is typically used to provide limited accessibility information for existing controls. Alternatively, you can write your own class deriving from the AccessibleObject or Control.ControlAccessibleObject classes, providing as much accessibility information as needed.

Note Note

To maintain better performance, do not set the size of a control in its constructor. The preferred method is to override the DefaultSize property.

Note Note

Do not add data bindings for a Control in its constructor. Doing so will cause errors in code generation and can cause unwanted behavior.

The majority of the controls in the System.Windows.Forms namespace use the underlying Windows common control as a base to build on. For more information about the Windows common controls, see the "General Control Reference" topic in the MSDN library at http://msdn.microsoft.com/library.

To identify Windows Forms controls from a separate process, use a standard SendMessage call to pass the WM_GETCONTROLNAME message. WM_GETCONTROLNAME is independent of the language and Windows hierarchy. For more information, see the "Recommended Solution for Windows Forms" topic in the "Automating Windows Forms" section of the MSDN library at http://msdn.microsoft.com/library.

Use the InvokeRequired property to synchronize access to the control from multiple threads. For more information about multithreaded Windows Forms controls, see How to: Make Thread-Safe Calls to Windows Forms Controls

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8 Release Preview, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 SP2, Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Only the following members are thread safe: BeginInvoke, EndInvoke, Invoke, InvokeRequired, and CreateGraphics if the handle for the control has already been created. Calling CreateGraphics before the control's handle has been created on a background thread can cause illegal cross thread calls.

Did you find this helpful?
(1500 characters remaining)