Control Class

Definition

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

public ref class Control : System::ComponentModel::Component, System::ComponentModel::ISynchronizeInvoke, System::Windows::Forms::IWin32Window
public ref class Control : System::ComponentModel::Component, IDisposable, System::ComponentModel::ISynchronizeInvoke, System::Windows::Forms::IBindableComponent, System::Windows::Forms::IDropTarget, System::Windows::Forms::IWin32Window
public class Control : System.ComponentModel.Component, System.ComponentModel.ISynchronizeInvoke, System.Windows.Forms.IWin32Window
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)]
[System.Runtime.InteropServices.ComVisible(true)]
public class Control : System.ComponentModel.Component, IDisposable, System.ComponentModel.ISynchronizeInvoke, System.Windows.Forms.IBindableComponent, System.Windows.Forms.IDropTarget, System.Windows.Forms.IWin32Window
public class Control : System.ComponentModel.Component, IDisposable, System.ComponentModel.ISynchronizeInvoke, System.Windows.Forms.IBindableComponent, System.Windows.Forms.IDropTarget, System.Windows.Forms.IWin32Window
type Control = class
    inherit Component
    interface UnsafeNativeMethods.IOleControl
    interface UnsafeNativeMethods.IOleObject
    interface UnsafeNativeMethods.IOleInPlaceObject
    interface UnsafeNativeMethods.IOleInPlaceActiveObject
    interface UnsafeNativeMethods.IOleWindow
    interface UnsafeNativeMethods.IViewObject
    interface UnsafeNativeMethods.IViewObject2
    interface UnsafeNativeMethods.IPersist
    interface UnsafeNativeMethods.IPersistStreamInit
    interface UnsafeNativeMethods.IPersistPropertyBag
    interface UnsafeNativeMethods.IPersistStorage
    interface UnsafeNativeMethods.IQuickActivate
    interface ISynchronizeInvoke
    interface IWin32Window
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Control = class
    inherit Component
    interface UnsafeNativeMethods.IOleControl
    interface UnsafeNativeMethods.IOleObject
    interface UnsafeNativeMethods.IOleInPlaceObject
    interface UnsafeNativeMethods.IOleInPlaceActiveObject
    interface UnsafeNativeMethods.IOleWindow
    interface UnsafeNativeMethods.IViewObject
    interface UnsafeNativeMethods.IViewObject2
    interface UnsafeNativeMethods.IPersist
    interface UnsafeNativeMethods.IPersistStreamInit
    interface UnsafeNativeMethods.IPersistPropertyBag
    interface UnsafeNativeMethods.IPersistStorage
    interface UnsafeNativeMethods.IQuickActivate
    interface IDropTarget
    interface ISynchronizeInvoke
    interface IWin32Window
    interface IBindableComponent
    interface IComponent
    interface IDisposable
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Control = class
    inherit Component
    interface IDropTarget
    interface ISynchronizeInvoke
    interface IWin32Window
    interface IBindableComponent
    interface IComponent
    interface IDisposable
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Control = class
    inherit Component
    interface IDropTarget
    interface ISynchronizeInvoke
    interface IWin32Window
    interface IComponent
    interface IDisposable
    interface IBindableComponent
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Control = class
    inherit Component
    interface UnsafeNativeMethods.IOleControl
    interface UnsafeNativeMethods.IOleObject
    interface UnsafeNativeMethods.IOleInPlaceObject
    interface UnsafeNativeMethods.IOleInPlaceActiveObject
    interface UnsafeNativeMethods.IOleWindow
    interface UnsafeNativeMethods.IViewObject
    interface UnsafeNativeMethods.IViewObject2
    interface UnsafeNativeMethods.IPersist
    interface Interop.Ole32.IPersistStreamInit
    interface UnsafeNativeMethods.IPersistPropertyBag
    interface Interop.Ole32.IPersistStorage
    interface UnsafeNativeMethods.IQuickActivate
    interface IDropTarget
    interface ISynchronizeInvoke
    interface IWin32Window
    interface IComponent
    interface IDisposable
    interface IBindableComponent
type Control = class
    inherit Component
    interface Interop.Ole32.IOleControl
    interface Interop.Ole32.IOleObject
    interface Interop.Ole32.IOleInPlaceObject
    interface Interop.Ole32.IOleInPlaceActiveObject
    interface Interop.Ole32.IOleWindow
    interface Interop.Ole32.IViewObject
    interface Interop.Ole32.IViewObject2
    interface Interop.Ole32.IPersist
    interface Interop.Ole32.IPersistStreamInit
    interface Interop.Oleaut32.IPersistPropertyBag
    interface Interop.Ole32.IPersistStorage
    interface Interop.Ole32.IQuickActivate
    interface IDropTarget
    interface ISynchronizeInvoke
    interface IWin32Window
    interface IComponent
    interface IDisposable
    interface IBindableComponent
type Control = class
    inherit Component
    interface IDropTarget
    interface ISynchronizeInvoke
    interface IWin32Window
    interface IComponent
    interface IDisposable
    interface IBindableComponent
    interface IOleControl.Interface
    interface IOleObject.Interface
    interface IOleInPlaceObject.Interface
    interface IOleWindow.Interface
    interface IOleInPlaceActiveObject.Interface
    interface IViewObject.Interface
    interface IViewObject2.Interface
    interface IPersist.Interface
    interface IPersistStreamInit.Interface
    interface IPersistPropertyBag.Interface
    interface IPersistStorage.Interface
    interface IQuickActivate.Interface
type Control = class
    inherit Component
    interface IOleControl.Interface
    interface IOleObject.Interface
    interface IOleInPlaceObject.Interface
    interface IOleWindow.Interface
    interface IOleInPlaceActiveObject.Interface
    interface IViewObject.Interface
    interface IViewObject2.Interface
    interface IPersist.Interface
    interface IPersistStreamInit.Interface
    interface IPersistPropertyBag.Interface
    interface IPersistStorage.Interface
    interface IQuickActivate.Interface
    interface IDropTarget
    interface ISynchronizeInvoke
    interface IWin32Window
    interface IComponent
    interface IDisposable
    interface IBindableComponent
Public Class Control
Inherits Component
Implements ISynchronizeInvoke, IWin32Window
Public Class Control
Inherits Component
Implements IBindableComponent, IDisposable, IDropTarget, ISynchronizeInvoke, IWin32Window
Inheritance
Derived
Attributes
Implements

Remarks

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

To make your Windows Forms application support 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 visual styles, see Visual Styles.

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

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

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 General Control Reference.

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 Automating Windows Forms.

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

Constructors

Control()

Initializes a new instance of the Control class with default settings.

Control(Control, String)

Initializes a new instance of the Control class as a child control, with specific text.

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.

Control(String)

Initializes a new instance of the Control class with specific text.

Control(String, Int32, Int32, Int32, Int32)

Initializes a new instance of the Control class with specific text, size, and location.

Properties

AccessibilityObject

Gets the AccessibleObject assigned to the control.

AccessibleDefaultActionDescription

Gets or sets the default action description of the control for use by accessibility client applications.

AccessibleDescription

Gets or sets the description of the control used by accessibility client applications.

AccessibleName

Gets or sets the name of the control used by accessibility client applications.

AccessibleRole

Gets or sets the accessible role of the control.

AllowDrop

Gets or sets a value indicating whether the control can accept data that the user drags onto it.

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.

AutoScrollOffset

Gets or sets where this control is scrolled to in ScrollControlIntoView(Control).

AutoSize

This property is not relevant for this class.

BackColor

Gets or sets the background color for the control.

BackgroundImage

Gets or sets the background image displayed in the control.

BackgroundImageLayout

Gets or sets the background image layout as defined in the ImageLayout enumeration.

BindingContext

Gets or sets the BindingContext for the control.

Bottom

Gets the distance, in pixels, between the bottom edge of the control and the top edge of its container's client area.

Bounds

Gets or sets the size and location of the control including its nonclient elements, in pixels, relative to the parent control.

CanEnableIme

Gets a value indicating whether the ImeMode property can be set to an active value, to enable IME support.

CanFocus

Gets a value indicating whether the control can receive focus.

CanRaiseEvents

Determines if events can be raised on the control.

CanRaiseEvents

Gets a value indicating whether the component can raise an event.

(Inherited from Component)
CanSelect

Gets a value indicating whether the control can be selected.

Capture

Gets or sets a value indicating whether the control has captured the mouse.

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.

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.

ClientRectangle

Gets the rectangle that represents the client area of the control.

ClientSize

Gets or sets the height and width of the client area of the control.

CompanyName

Gets the name of the company or creator of the application containing the control.

Container

Gets the IContainer that contains the Component.

(Inherited from Component)
ContainsFocus

Gets a value indicating whether the control, or one of its child controls, currently has the input focus.

ContextMenu

Gets or sets the shortcut menu associated with the control.

ContextMenuStrip

Gets or sets the ContextMenuStrip associated with this control.

Controls

Gets the collection of controls contained within the control.

Created

Gets a value indicating whether the control has been created.

CreateParams

Gets the required creation parameters when the control handle is created.

Cursor

Gets or sets the cursor that is displayed when the mouse pointer is over the control.

DataBindings

Gets the data bindings for the control.

DataContext

Gets or sets the data context for the purpose of data binding. This is an ambient property.

DefaultBackColor

Gets the default background color of the control.

DefaultCursor

Gets or sets the default cursor for the control.

DefaultFont

Gets the default font of the control.

DefaultForeColor

Gets the default foreground color of the control.

DefaultImeMode

Gets the default Input Method Editor (IME) mode supported by the control.

DefaultMargin

Gets the space, in pixels, that is specified by default between controls.

DefaultMaximumSize

Gets the length and height, in pixels, that is specified as the default maximum size of a control.

DefaultMinimumSize

Gets the length and height, in pixels, that is specified as the default minimum size of a control.

DefaultPadding

Gets the internal spacing, in pixels, of the contents of a control.

DefaultSize

Gets the default size of the control.

DesignMode

Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
DeviceDpi

Gets the DPI value for the display device where the control is currently being displayed.

DisplayRectangle

Gets the rectangle that represents the display area of the control.

Disposing

Gets a value indicating whether the base Control class is in the process of disposing.

Dock

Gets or sets which control borders are docked to its parent control and determines how a control is resized with its parent.

DoubleBuffered

Gets or sets a value indicating whether this control should redraw its surface using a secondary buffer to reduce or prevent flicker.

Enabled

Gets or sets a value indicating whether the control can respond to user interaction.

Events

Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
Focused

Gets a value indicating whether the control has input focus.

Font

Gets or sets the font of the text displayed by the control.

FontHeight

Gets or sets the height of the font of the control.

ForeColor

Gets or sets the foreground color of the control.

Handle

Gets the window handle that the control is bound to.

HasChildren

Gets a value indicating whether the control contains one or more child controls.

Height

Gets or sets the height of the control.

ImeMode

Gets or sets the Input Method Editor (IME) mode of the control.

ImeModeBase

Gets or sets the IME mode of a control.

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.

IsAccessible

Gets or sets a value indicating whether the control is visible to accessibility applications.

IsAncestorSiteInDesignMode

Indicates if one of the Ancestors of this control is sited and that site in DesignMode. This property is read-only.

IsDisposed

Gets a value indicating whether the control has been disposed of.

IsHandleCreated

Gets a value indicating whether the control has a handle associated with it.

IsMirrored

Gets a value indicating whether the control is mirrored.

LayoutEngine

Gets a cached instance of the control's layout engine.

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.

Location

Gets or sets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container.

Margin

Gets or sets the space between controls.

MaximumSize

Gets or sets the size that is the upper limit that GetPreferredSize(Size) can specify.

MinimumSize

Gets or sets the size that is the lower limit that GetPreferredSize(Size) can specify.

ModifierKeys

Gets a value indicating which of the modifier keys (SHIFT, CTRL, and ALT) is in a pressed state.

MouseButtons

Gets a value indicating which of the mouse buttons is in a pressed state.

MousePosition

Gets the position of the mouse cursor in screen coordinates.

Name

Gets or sets the name of the control.

Padding

Gets or sets padding within the control.

Parent

Gets or sets the parent container of the control.

PreferredSize

Gets the size of a rectangular area into which the control can fit.

ProductName

Gets the product name of the assembly containing the control.

ProductVersion

Gets the version of the assembly containing the control.

PropagatingImeMode

Gets an object that represents a propagating IME mode.

RecreatingHandle

Gets a value indicating whether the control is currently re-creating its handle.

Region

Gets or sets the window region associated with the control.

RenderRightToLeft
Obsolete.
Obsolete.

This property is now obsolete.

ResizeRedraw

Gets or sets a value indicating whether the control redraws itself when resized.

Right

Gets the distance, in pixels, between the right edge of the control and the left edge of its container's client area.

RightToLeft

Gets or sets a value indicating whether control's elements are aligned to support locales using right-to-left fonts.

ScaleChildren

Gets a value that determines the scaling of child controls.

ShowFocusCues

Gets a value indicating whether the control should display focus rectangles.

ShowKeyboardCues

Gets a value indicating whether the user interface is in the appropriate state to show or hide keyboard accelerators.

Site

Gets or sets the site of the control.

Size

Gets or sets the height and width of the control.

TabIndex

Gets or sets the tab order of the control within its container.

TabStop

Gets or sets a value indicating whether the user can give the focus to this control using the TAB key.

Tag

Gets or sets the object that contains data about the control.

Text

Gets or sets the text associated with this control.

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.

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.

UseWaitCursor

Gets or sets a value indicating whether to use the wait cursor for the current control and all child controls.

Visible

Gets or sets a value indicating whether the control and all its child controls are displayed.

Width

Gets or sets the width of the control.

WindowTarget

This property is not relevant for this class.

Methods

AccessibilityNotifyClients(AccessibleEvents, Int32)

Notifies the accessibility client applications of the specified AccessibleEvents for the specified child control.

AccessibilityNotifyClients(AccessibleEvents, Int32, Int32)

Notifies the accessibility client applications of the specified AccessibleEvents for the specified child control .

BeginInvoke(Action)

Executes the specified delegate asynchronously on the thread that the control's underlying handle was created on.

BeginInvoke(Delegate)

Executes the specified delegate asynchronously on the thread that the control's underlying handle was created on.

BeginInvoke(Delegate, Object[])

Executes the specified delegate asynchronously with the specified arguments, on the thread that the control's underlying handle was created on.

BringToFront()

Brings the control to the front of the z-order.

Contains(Control)

Retrieves a value indicating whether the specified control is a child of the control.

CreateAccessibilityInstance()

Creates a new accessibility object for the control.

CreateControl()

Forces the creation of the visible control, including the creation of the handle and any visible child controls.

CreateControlsInstance()

Creates a new instance of the control collection for the control.

CreateGraphics()

Creates the Graphics for the control.

CreateHandle()

Creates a handle for the control.

CreateObjRef(Type)

Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
DefWndProc(Message)

Sends the specified message to the default window procedure.

DestroyHandle()

Destroys the handle associated with the control.

Dispose()

Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean)

Releases the unmanaged resources used by the Control and its child controls and optionally releases the managed resources.

DoDragDrop(Object, DragDropEffects)

Begins a drag-and-drop operation.

DoDragDrop(Object, DragDropEffects, Bitmap, Point, Boolean)

Begins a drag operation.

DrawToBitmap(Bitmap, Rectangle)

Supports rendering to the specified bitmap.

EndInvoke(IAsyncResult)

Retrieves the return value of the asynchronous operation represented by the IAsyncResult passed.

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
FindForm()

Retrieves the form that the control is on.

Focus()

Sets input focus to the control.

FromChildHandle(IntPtr)

Retrieves the control that contains the specified handle.

FromHandle(IntPtr)

Returns the control that is currently associated with the specified handle.

GetAccessibilityObjectById(Int32)

Retrieves the specified AccessibleObject.

GetAutoSizeMode()

Retrieves a value indicating how a control will behave when its AutoSize property is enabled.

GetChildAtPoint(Point)

Retrieves the child control that is located at the specified coordinates.

GetChildAtPoint(Point, GetChildAtPointSkip)

Retrieves the child control that is located at the specified coordinates, specifying whether to ignore child controls of a certain type.

GetContainerControl()

Returns the next ContainerControl up the control's chain of parent controls.

GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetLifetimeService()
Obsolete.

Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetNextControl(Control, Boolean)

Retrieves the next control forward or back in the tab order of child controls.

GetPreferredSize(Size)

Retrieves the size of a rectangular area into which a control can be fitted.

GetScaledBounds(Rectangle, SizeF, BoundsSpecified)

Retrieves the bounds within which the control is scaled.

GetService(Type)

Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetStyle(ControlStyles)

Retrieves the value of the specified control style bit for the control.

GetTopLevel()

Determines if the control is a top-level control.

GetType()

Gets the Type of the current instance.

(Inherited from Object)
Hide()

Conceals the control from the user.

InitializeLifetimeService()
Obsolete.

Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
InitLayout()

Called after the control has been added to another container.

Invalidate()

Invalidates the entire surface of the control and causes the control to be redrawn.

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.

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.

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.

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.

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.

Invoke(Action)

Executes the specified delegate on the thread that owns the control's underlying window handle.

Invoke(Delegate)

Executes the specified delegate on the thread that owns the control's underlying window handle.

Invoke(Delegate, Object[])

Executes the specified delegate, on the thread that owns the control's underlying window handle, with the specified list of arguments.

Invoke<T>(Func<T>)

Executes the specified delegate on the thread that owns the control's underlying window handle.

InvokeGotFocus(Control, EventArgs)

Raises the GotFocus event for the specified control.

InvokeLostFocus(Control, EventArgs)

Raises the LostFocus event for the specified control.

InvokeOnClick(Control, EventArgs)

Raises the Click event for the specified control.

InvokePaint(Control, PaintEventArgs)

Raises the Paint event for the specified control.

InvokePaintBackground(Control, PaintEventArgs)

Raises the PaintBackground event for the specified control.

IsInputChar(Char)

Determines if a character is an input character that the control recognizes.

IsInputKey(Keys)

Determines whether the specified key is a regular input key or a special key that requires preprocessing.

IsKeyLocked(Keys)

Determines whether the CAPS LOCK, NUM LOCK, or SCROLL LOCK key is in effect.

IsMnemonic(Char, String)

Determines if the specified character is the mnemonic character assigned to the control in the specified string.

LogicalToDeviceUnits(Int32)

Converts a Logical DPI value to its equivalent DeviceUnit DPI value.

LogicalToDeviceUnits(Size)

Transforms a size from logical to device units by scaling it for the current DPI and rounding down to the nearest integer value for width and height.

MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean)

Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
NotifyInvalidate(Rectangle)

Raises the Invalidated event with a specified region of the control to invalidate.

OnAutoSizeChanged(EventArgs)

Raises the AutoSizeChanged event.

OnBackColorChanged(EventArgs)

Raises the BackColorChanged event.

OnBackgroundImageChanged(EventArgs)

Raises the BackgroundImageChanged event.

OnBackgroundImageLayoutChanged(EventArgs)

Raises the BackgroundImageLayoutChanged event.

OnBindingContextChanged(EventArgs)

Raises the BindingContextChanged event.

OnCausesValidationChanged(EventArgs)

Raises the CausesValidationChanged event.

OnChangeUICues(UICuesEventArgs)

Raises the ChangeUICues event.

OnClick(EventArgs)

Raises the Click event.

OnClientSizeChanged(EventArgs)

Raises the ClientSizeChanged event.

OnContextMenuChanged(EventArgs)

Raises the ContextMenuChanged event.

OnContextMenuStripChanged(EventArgs)

Raises the ContextMenuStripChanged event.

OnControlAdded(ControlEventArgs)

Raises the ControlAdded event.

OnControlRemoved(ControlEventArgs)

Raises the ControlRemoved event.

OnCreateControl()

Raises the CreateControl() method.

OnCursorChanged(EventArgs)

Raises the CursorChanged event.

OnDataContextChanged(EventArgs)
OnDockChanged(EventArgs)

Raises the DockChanged event.

OnDoubleClick(EventArgs)

Raises the DoubleClick event.

OnDpiChangedAfterParent(EventArgs)

Raises the DpiChangedAfterParent event.

OnDpiChangedBeforeParent(EventArgs)

Raises the DpiChangedBeforeParent event.

OnDragDrop(DragEventArgs)

Raises the DragDrop event.

OnDragEnter(DragEventArgs)

Raises the DragEnter event.

OnDragLeave(EventArgs)

Raises the DragLeave event.

OnDragOver(DragEventArgs)

Raises the DragOver event.

OnEnabledChanged(EventArgs)

Raises the EnabledChanged event.

OnEnter(EventArgs)

Raises the Enter event.

OnFontChanged(EventArgs)

Raises the FontChanged event.

OnForeColorChanged(EventArgs)

Raises the ForeColorChanged event.

OnGiveFeedback(GiveFeedbackEventArgs)

Raises the GiveFeedback event.

OnGotFocus(EventArgs)

Raises the GotFocus event.

OnHandleCreated(EventArgs)

Raises the HandleCreated event.

OnHandleDestroyed(EventArgs)

Raises the HandleDestroyed event.

OnHelpRequested(HelpEventArgs)

Raises the HelpRequested event.

OnImeModeChanged(EventArgs)

Raises the ImeModeChanged event.

OnInvalidated(InvalidateEventArgs)

Raises the Invalidated event.

OnKeyDown(KeyEventArgs)

Raises the KeyDown event.

OnKeyPress(KeyPressEventArgs)

Raises the KeyPress event.

OnKeyUp(KeyEventArgs)

Raises the KeyUp event.

OnLayout(LayoutEventArgs)

Raises the Layout event.

OnLeave(EventArgs)

Raises the Leave event.

OnLocationChanged(EventArgs)

Raises the LocationChanged event.

OnLostFocus(EventArgs)

Raises the LostFocus event.

OnMarginChanged(EventArgs)

Raises the MarginChanged event.

OnMouseCaptureChanged(EventArgs)

Raises the MouseCaptureChanged event.

OnMouseClick(MouseEventArgs)

Raises the MouseClick event.

OnMouseDoubleClick(MouseEventArgs)

Raises the MouseDoubleClick event.

OnMouseDown(MouseEventArgs)

Raises the MouseDown event.

OnMouseEnter(EventArgs)

Raises the MouseEnter event.

OnMouseHover(EventArgs)

Raises the MouseHover event.

OnMouseLeave(EventArgs)

Raises the MouseLeave event.

OnMouseMove(MouseEventArgs)

Raises the MouseMove event.

OnMouseUp(MouseEventArgs)

Raises the MouseUp event.

OnMouseWheel(MouseEventArgs)

Raises the MouseWheel event.

OnMove(EventArgs)

Raises the Move event.

OnNotifyMessage(Message)

Notifies the control of Windows messages.

OnPaddingChanged(EventArgs)

Raises the PaddingChanged event.

OnPaint(PaintEventArgs)

Raises the Paint event.

OnPaintBackground(PaintEventArgs)

Paints the background of the control.

OnParentBackColorChanged(EventArgs)

Raises the BackColorChanged event when the BackColor property value of the control's container changes.

OnParentBackgroundImageChanged(EventArgs)

Raises the BackgroundImageChanged event when the BackgroundImage property value of the control's container changes.

OnParentBindingContextChanged(EventArgs)

Raises the BindingContextChanged event when the BindingContext property value of the control's container changes.

OnParentChanged(EventArgs)

Raises the ParentChanged event.

OnParentCursorChanged(EventArgs)

Raises the CursorChanged event.

OnParentDataContextChanged(EventArgs)
OnParentEnabledChanged(EventArgs)

Raises the EnabledChanged event when the Enabled property value of the control's container changes.

OnParentFontChanged(EventArgs)

Raises the FontChanged event when the Font property value of the control's container changes.

OnParentForeColorChanged(EventArgs)

Raises the ForeColorChanged event when the ForeColor property value of the control's container changes.

OnParentRightToLeftChanged(EventArgs)

Raises the RightToLeftChanged event when the RightToLeft property value of the control's container changes.

OnParentVisibleChanged(EventArgs)

Raises the VisibleChanged event when the Visible property value of the control's container changes.

OnPreviewKeyDown(PreviewKeyDownEventArgs)

Raises the PreviewKeyDown event.

OnPrint(PaintEventArgs)

Raises the Paint event.

OnQueryContinueDrag(QueryContinueDragEventArgs)

Raises the QueryContinueDrag event.

OnRegionChanged(EventArgs)

Raises the RegionChanged event.

OnResize(EventArgs)

Raises the Resize event.

OnRightToLeftChanged(EventArgs)

Raises the RightToLeftChanged event.

OnSizeChanged(EventArgs)

Raises the SizeChanged event.

OnStyleChanged(EventArgs)

Raises the StyleChanged event.

OnSystemColorsChanged(EventArgs)

Raises the SystemColorsChanged event.

OnTabIndexChanged(EventArgs)

Raises the TabIndexChanged event.

OnTabStopChanged(EventArgs)

Raises the TabStopChanged event.

OnTextChanged(EventArgs)

Raises the TextChanged event.

OnValidated(EventArgs)

Raises the Validated event.

OnValidating(CancelEventArgs)

Raises the Validating event.

OnVisibleChanged(EventArgs)

Raises the VisibleChanged event.

PerformLayout()

Forces the control to apply layout logic to all its child controls.

PerformLayout(Control, String)

Forces the control to apply layout logic to all its child controls.

PointToClient(Point)

Computes the location of the specified screen point into client coordinates.

PointToScreen(Point)

Computes the location of the specified client point into screen coordinates.

PreProcessControlMessage(Message)

Preprocesses keyboard or input messages within the message loop before they are dispatched.

PreProcessMessage(Message)

Preprocesses keyboard or input messages within the message loop before they are dispatched.

ProcessCmdKey(Message, Keys)

Processes a command key.

ProcessDialogChar(Char)

Processes a dialog character.

ProcessDialogKey(Keys)

Processes a dialog key.

ProcessKeyEventArgs(Message)

Processes a key message and generates the appropriate control events.

ProcessKeyMessage(Message)

Processes a keyboard message.

ProcessKeyPreview(Message)

Previews a keyboard message.

ProcessMnemonic(Char)

Processes a mnemonic character.

RaiseDragEvent(Object, DragEventArgs)

Raises the appropriate drag event.

RaiseKeyEvent(Object, KeyEventArgs)

Raises the appropriate key event.

RaiseMouseEvent(Object, MouseEventArgs)

Raises the appropriate mouse event.

RaisePaintEvent(Object, PaintEventArgs)

Raises the appropriate paint event.

RecreateHandle()

Forces the re-creation of the handle for the control.

RectangleToClient(Rectangle)

Computes the size and location of the specified screen rectangle in client coordinates.

RectangleToScreen(Rectangle)

Computes the size and location of the specified client rectangle in screen coordinates.

ReflectMessage(IntPtr, Message)

Reflects the specified message to the control that is bound to the specified handle.

Refresh()

Forces the control to invalidate its client area and immediately redraw itself and any child controls.

RescaleConstantsForDpi(Int32, Int32)

Provides constants for rescaling the control when a DPI change occurs.

ResetBackColor()

Resets the BackColor property to its default value.

ResetBindings()

Causes a control bound to the BindingSource to reread all the items in the list and refresh their displayed values.

ResetCursor()

Resets the Cursor property to its default value.

ResetFont()

Resets the Font property to its default value.

ResetForeColor()

Resets the ForeColor property to its default value.

ResetImeMode()

Resets the ImeMode property to its default value.

ResetMouseEventArgs()

Resets the control to handle the MouseLeave event.

ResetRightToLeft()

Resets the RightToLeft property to its default value.

ResetText()

Resets the Text property to its default value (Empty).

ResumeLayout()

Resumes usual layout logic.

ResumeLayout(Boolean)

Resumes usual layout logic, optionally forcing an immediate layout of pending layout requests.

RtlTranslateAlignment(ContentAlignment)

Converts the specified ContentAlignment to the appropriate ContentAlignment to support right-to-left text.

RtlTranslateAlignment(HorizontalAlignment)

Converts the specified HorizontalAlignment to the appropriate HorizontalAlignment to support right-to-left text.

RtlTranslateAlignment(LeftRightAlignment)

Converts the specified LeftRightAlignment to the appropriate LeftRightAlignment to support right-to-left text.

RtlTranslateContent(ContentAlignment)

Converts the specified ContentAlignment to the appropriate ContentAlignment to support right-to-left text.

RtlTranslateHorizontal(HorizontalAlignment)

Converts the specified HorizontalAlignment to the appropriate HorizontalAlignment to support right-to-left text.

RtlTranslateLeftRight(LeftRightAlignment)

Converts the specified LeftRightAlignment to the appropriate LeftRightAlignment to support right-to-left text.

Scale(Single)
Obsolete.
Obsolete.

Scales the control and any child controls.

Scale(Single, Single)
Obsolete.
Obsolete.

Scales the entire control and any child controls.

Scale(SizeF)

Scales the control and all child controls by the specified scaling factor.

ScaleBitmapLogicalToDevice(Bitmap)

Scales a logical bitmap value to it's equivalent device unit value when a DPI change occurs.

ScaleControl(SizeF, BoundsSpecified)

Scales a control's location, size, padding and margin.

ScaleCore(Single, Single)

This method is not relevant for this class.

Select()

Activates the control.

Select(Boolean, Boolean)

Activates a child control. Optionally specifies the direction in the tab order to select the control from.

SelectNextControl(Control, Boolean, Boolean, Boolean, Boolean)

Activates the next control.

SendToBack()

Sends the control to the back of the z-order.

SetAutoSizeMode(AutoSizeMode)

Sets a value indicating how a control will behave when its AutoSize property is enabled.

SetBounds(Int32, Int32, Int32, Int32)

Sets the bounds of the control to the specified location and size.

SetBounds(Int32, Int32, Int32, Int32, BoundsSpecified)

Sets the specified bounds of the control to the specified location and size.

SetBoundsCore(Int32, Int32, Int32, Int32, BoundsSpecified)

Performs the work of setting the specified bounds of this control.

SetClientSizeCore(Int32, Int32)

Sets the size of the client area of the control.

SetStyle(ControlStyles, Boolean)

Sets a specified ControlStyles flag to either true or false.

SetTopLevel(Boolean)

Sets the control as the top-level control.

SetVisibleCore(Boolean)

Sets the control to the specified visible state.

Show()

Displays the control to the user.

SizeFromClientSize(Size)

Determines the size of the entire control from the height and width of its client area.

SuspendLayout()

Temporarily suspends the layout logic for the control.

ToString()

Returns a String containing the name of the Component, if any. This method should not be overridden.

(Inherited from Component)
Update()

Causes the control to redraw the invalidated regions within its client area.

UpdateBounds()

Updates the bounds of the control with the current size and location.

UpdateBounds(Int32, Int32, Int32, Int32)

Updates the bounds of the control with the specified size and location.

UpdateBounds(Int32, Int32, Int32, Int32, Int32, Int32)

Updates the bounds of the control with the specified size, location, and client size.

UpdateStyles()

Forces the assigned styles to be reapplied to the control.

UpdateZOrder()

Updates the control in its parent's z-order.

WndProc(Message)

Processes Windows messages.

Events

AutoSizeChanged

This event is not relevant for this class.

BackColorChanged

Occurs when the value of the BackColor property changes.

BackgroundImageChanged

Occurs when the value of the BackgroundImage property changes.

BackgroundImageLayoutChanged

Occurs when the BackgroundImageLayout property changes.

BindingContextChanged

Occurs when the value of the BindingContext property changes.

CausesValidationChanged

Occurs when the value of the CausesValidation property changes.

ChangeUICues

Occurs when the focus or keyboard user interface (UI) cues change.

Click

Occurs when the control is clicked.

ClientSizeChanged

Occurs when the value of the ClientSize property changes.

ContextMenuChanged

Occurs when the value of the ContextMenu property changes.

ContextMenuStripChanged

Occurs when the value of the ContextMenuStrip property changes.

ControlAdded

Occurs when a new control is added to the Control.ControlCollection.

ControlRemoved

Occurs when a control is removed from the Control.ControlCollection.

CursorChanged

Occurs when the value of the Cursor property changes.

DataContextChanged

Occurs when the value of the DataContext property changes.

Disposed

Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
DockChanged

Occurs when the value of the Dock property changes.

DoubleClick

Occurs when the control is double-clicked.

DpiChangedAfterParent

Occurs when the DPI setting for a control is changed programmatically after the DPI of its parent control or form has changed.

DpiChangedBeforeParent

Occurs when the DPI setting for a control is changed programmatically before a DPI change event for its parent control or form has occurred.

DragDrop

Occurs when a drag-and-drop operation is completed.

DragEnter

Occurs when an object is dragged into the control's bounds.

DragLeave

Occurs when an object is dragged out of the control's bounds.

DragOver

Occurs when an object is dragged over the control's bounds.

EnabledChanged

Occurs when the Enabled property value has changed.

Enter

Occurs when the control is entered.

FontChanged

Occurs when the Font property value changes.

ForeColorChanged

Occurs when the ForeColor property value changes.

GiveFeedback

Occurs during a drag operation.

GotFocus

Occurs when the control receives focus.

HandleCreated

Occurs when a handle is created for the control.

HandleDestroyed

Occurs when the control's handle is in the process of being destroyed.

HelpRequested

Occurs when the user requests help for a control.

ImeModeChanged

Occurs when the ImeMode property has changed.

Invalidated

Occurs when a control's display requires redrawing.

KeyDown

Occurs when a key is pressed while the control has focus.

KeyPress

Occurs when a character. space or backspace key is pressed while the control has focus.

KeyUp

Occurs when a key is released while the control has focus.

Layout

Occurs when a control should reposition its child controls.

Leave

Occurs when the input focus leaves the control.

LocationChanged

Occurs when the Location property value has changed.

LostFocus

Occurs when the control loses focus.

MarginChanged

Occurs when the control's margin changes.

MouseCaptureChanged

Occurs when the control loses mouse capture.

MouseClick

Occurs when the control is clicked by the mouse.

MouseDoubleClick

Occurs when the control is double clicked by the mouse.

MouseDown

Occurs when the mouse pointer is over the control and a mouse button is pressed.

MouseEnter

Occurs when the mouse pointer enters the control.

MouseHover

Occurs when the mouse pointer rests on the control.

MouseLeave

Occurs when the mouse pointer leaves the control.

MouseMove

Occurs when the mouse pointer is moved over the control.

MouseUp

Occurs when the mouse pointer is over the control and a mouse button is released.

MouseWheel

Occurs when the mouse wheel moves while the control has focus.

Move

Occurs when the control is moved.

PaddingChanged

Occurs when the control's padding changes.

Paint

Occurs when the control is redrawn.

ParentChanged

Occurs when the Parent property value changes.

PreviewKeyDown

Occurs before the KeyDown event when a key is pressed while focus is on this control.

QueryAccessibilityHelp

Occurs when AccessibleObject is providing help to accessibility applications.

QueryContinueDrag

Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled.

RegionChanged

Occurs when the value of the Region property changes.

Resize

Occurs when the control is resized.

RightToLeftChanged

Occurs when the RightToLeft property value changes.

SizeChanged

Occurs when the Size property value changes.

StyleChanged

Occurs when the control style changes.

SystemColorsChanged

Occurs when the system colors change.

TabIndexChanged

Occurs when the TabIndex property value changes.

TabStopChanged

Occurs when the TabStop property value changes.

TextChanged

Occurs when the Text property value changes.

Validated

Occurs when the control is finished validating.

Validating

Occurs when the control is validating.

VisibleChanged

Occurs when the Visible property value changes.

Explicit Interface Implementations

IDropTarget.OnDragDrop(DragEventArgs)

Raises the DragDrop event.

IDropTarget.OnDragEnter(DragEventArgs)

Raises the DragEnter event.

IDropTarget.OnDragLeave(EventArgs)

Raises the DragLeave event.

IDropTarget.OnDragOver(DragEventArgs)

Raises the DragOver event.

Applies to

Thread Safety

Only the following members are thread safe: BeginInvoke(Delegate), EndInvoke(IAsyncResult), Invoke(Delegate), 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.

See also