System.ComponentModel Namespace

The System.ComponentModel namespace provides classes that are used to implement the run-time and design-time behavior of components and controls. This namespace includes the base classes and interfaces for implementing attributes and type converters, binding to data sources, and licensing components.

Remarks

The classes in this namespace divide into the following categories:

Classes

TypeReason
AddingNewEventArgs

Provides data for the BindingSource.AddingNew event.

AddingNewEventHandler

Represents the method that will handle the BindingSource.AddingNew event.

AmbientValueAttribute

Specifies the value to pass to a property to cause the property to get its value from another source. This is known as ambience. This class cannot be inherited.

ArrayConverter

Provides a type converter to convert Array objects to and from various other representations.

AsyncCompletedEventArgs

Provides data for the MethodNameCompleted event.

AsyncCompletedEventHandler

Represents the method that will handle the MethodNameCompleted event of an asynchronous operation.

AsyncOperation

Tracks the lifetime of an asynchronous operation.

AsyncOperationManager

Provides concurrency management for classes that support asynchronous method calls. This class cannot be inherited.

AttributeCollection

Represents a collection of attributes.

AttributeProviderAttribute

Enables attribute redirection. This class cannot be inherited.

BackgroundWorker

Executes an operation on a separate thread.

BaseNumberConverter

Provides a base type converter for nonfloating-point numerical types.

BindableAttribute

Specifies whether a member is typically used for binding. This class cannot be inherited.

BindableSupport

Specifies values to indicate whether a property can be bound to a data element or another property.

BindingDirection

Specifies whether the template can be bound one way or two ways.

BindingList<T>

Provides a generic collection that supports data binding.

BooleanConverter

Provides a type converter to convert Boolean objects to and from various other representations.

BrowsableAttribute

Specifies whether a property or event should be displayed in a Properties window.

ByteConverter

Provides a type converter to convert 8-bit unsigned integer objects to and from various other representations.

CancelEventArgs

Provides data for a cancelable event.

CancelEventHandler

Represents the method that handles a cancelable event.

CategoryAttribute

Specifies the name of the category in which to group the property or event when displayed in a PropertyGrid control set to Categorized mode.

CharConverter

Provides a type converter to convert Unicode character objects to and from various other representations.

CollectionChangeAction

Specifies how the collection is changed.

CollectionChangeEventArgs

Provides data for the DataColumnCollection.CollectionChanged event.

CollectionChangeEventHandler

Represents the method that handles the DataColumnCollection.CollectionChanged event raised when adding elements to or removing elements from a collection.

CollectionConverter

Provides a type converter to convert collection objects to and from various other representations.

ComplexBindingPropertiesAttribute

Specifies the data source and data member properties for a component that supports complex data binding. This class cannot be inherited.

Component

Provides the base implementation for the IComponent interface and enables object sharing between applications.

ComponentCollection

Provides a read-only container for a collection of IComponent objects.

ComponentConverter

Provides a type converter to convert components to and from various other representations.

ComponentEditor

Provides the base class for a custom component editor.

ComponentResourceManager

Provides simple functionality for enumerating resources for a component or object. The ComponentResourceManager class is a ResourceManager.

Container

Encapsulates zero or more components.

ContainerFilterService

Provides a base class for the container filter service.

CultureInfoConverter

Provides a type converter to convert CultureInfo objects to and from various other representations.

CustomTypeDescriptor

Provides a simple default implementation of the ICustomTypeDescriptor interface.

DataErrorsChangedEventArgs

Provides data for the INotifyDataErrorInfo.ErrorsChanged event.

DataObjectAttribute

Identifies a type as an object suitable for binding to an ObjectDataSource object. This class cannot be inherited.

DataObjectFieldAttribute

Provides metadata for a property representing a data field. This class cannot be inherited.

DataObjectMethodAttribute

Identifies a data operation method exposed by a type, what type of operation the method performs, and whether the method is the default data method. This class cannot be inherited.

DataObjectMethodType

Identifies the type of data operation performed by a method, as specified by the DataObjectMethodAttribute applied to the method.

DateTimeConverter

Provides a type converter to convert DateTime objects to and from various other representations.

DateTimeOffsetConverter

Provides a type converter to convert DateTimeOffset structures to and from various other representations.

DecimalConverter

Provides a type converter to convert Decimal objects to and from various other representations.

DefaultBindingPropertyAttribute

Specifies the default binding property for a component. This class cannot be inherited.

DefaultEventAttribute

Specifies the default event for a component.

DefaultPropertyAttribute

Specifies the default property for a component.

DefaultValueAttribute

Specifies the default value for a property.

DescriptionAttribute

Specifies a description for a property or event.

DesignerAttribute

Specifies the class used to implement design-time services for a component.

DesignerCategoryAttribute

Specifies that the designer for a class belongs to a certain category.

DesignerSerializationVisibility

Specifies the visibility a property has to the design-time serializer.

DesignerSerializationVisibilityAttribute

Specifies the type of persistence to use when serializing a property on a component at design time.

DesignOnlyAttribute

Specifies whether a property can only be set at design time.

DesignTimeVisibleAttribute

DesignTimeVisibleAttribute marks a component's visibility. If DesignTimeVisibleAttribute.Yes is present, a visual designer can show this component on a designer.

DisplayNameAttribute

Specifies the display name for a property, event, or public void method which takes no arguments.

DoubleConverter

Provides a type converter to convert double-precision, floating point number objects to and from various other representations.

DoWorkEventArgs

Provides data for the BackgroundWorker.DoWork event handler.

DoWorkEventHandler

Represents the method that will handle the BackgroundWorker.DoWork event. This class cannot be inherited.

EditorAttribute

Specifies the editor to use to change a property. This class cannot be inherited.

EditorBrowsableAttribute

Specifies that a property or method is viewable in an editor. This class cannot be inherited.

EditorBrowsableState

Specifies the browsable state of a property or method from within an editor.

EnumConverter

Provides a type converter to convert Enum objects to and from various other representations.

EventDescriptor

Provides information about an event.

EventDescriptorCollection

Represents a collection of EventDescriptor objects.

EventHandlerList

Provides a simple list of delegates. This class cannot be inherited.

ExpandableObjectConverter

Provides a type converter to convert expandable objects to and from various other representations.

ExtenderProvidedPropertyAttribute

Specifies a property that is offered by an extender provider. This class cannot be inherited.

GuidConverter

Provides a type converter to convert Guid objects to and from various other representations.

HandledEventArgs

Provides data for events that can be handled completely in an event handler.

HandledEventHandler

Represents a method that can handle events which may or may not require further processing after the event handler has returned.

IBindingList

Provides the features required to support both complex and simple scenarios when binding to a data source.

IBindingListView

Extends the IBindingList interface by providing advanced sorting and filtering capabilities.

ICancelAddNew

Adds transactional capability when adding a new item to a collection.

IChangeTracking

Defines the mechanism for querying the object for changes and resetting of the changed status.

IComNativeDescriptorHandler

Provides a top-level mapping layer between a COM object and a TypeDescriptor.

IComponent

Provides functionality required by all components.

IContainer

Provides functionality for containers. Containers are objects that logically contain zero or more components.

ICustomTypeDescriptor

Provides an interface that supplies dynamic custom type information for an object.

IDataErrorInfo

Provides the functionality to offer custom error information that a user interface can bind to.

IEditableObject

Provides functionality to commit or rollback changes to an object that is used as a data source.

IExtenderProvider

Defines the interface for extending properties to other components in a container.

IIntellisenseBuilder

Provides an interface to facilitate the retrieval of the builder's name and to display the builder.

IListSource

Provides functionality to an object to return a list that can be bound to a data source.

ImmutableObjectAttribute

Specifies that an object has no subproperties capable of being edited. This class cannot be inherited.

INestedContainer

Provides functionality for nested containers, which logically contain zero or more other components and are owned by a parent component.

INestedSite

Provides the ability to retrieve the full nested name of a component.

InheritanceAttribute

Indicates whether the component associated with this attribute has been inherited from a base class. This class cannot be inherited.

InheritanceLevel

Defines identifiers for types of inheritance levels.

InitializationEventAttribute

Specifies which event is raised on initialization. This class cannot be inherited.

INotifyDataErrorInfo

Defines members that data entity classes can implement to provide custom synchronous and asynchronous validation support.

INotifyPropertyChanged

Notifies clients that a property value has changed.

INotifyPropertyChanging

Notifies clients that a property value is changing.

InstallerTypeAttribute

Specifies the installer for a type that installs components.

InstanceCreationEditor

Creates an instance of a particular type of property from a drop-down box within the PropertyGrid.

Int16Converter

Provides a type converter to convert 16-bit signed integer objects to and from other representations.

Int32Converter

Provides a type converter to convert 32-bit signed integer objects to and from other representations.

Int64Converter

Provides a type converter to convert 64-bit signed integer objects to and from various other representations.

InvalidAsynchronousStateException

Thrown when a thread on which an operation should execute no longer exists or has no message loop.

InvalidEnumArgumentException

The exception thrown when using invalid arguments that are enumerators.

IRaiseItemChangedEvents

Indicates whether a class converts property change events to IBindingList.ListChanged events.

IRevertibleChangeTracking

Provides support for rolling back the changes

ISite

Provides functionality required by sites.

ISupportInitialize

Specifies that this object supports a simple, transacted notification for batch initialization.

ISupportInitializeNotification

Allows coordination of initialization for a component and its dependent properties.

ISynchronizeInvoke

Provides a way to synchronously or asynchronously execute a delegate.

ITypeDescriptorContext

Provides contextual information about a component, such as its container and property descriptor.

ITypedList

Provides functionality to discover the schema for a bindable list, where the properties available for binding differ from the public properties of the object to bind to.

License

Provides the abstract base class for all licenses. A license is granted to a specific instance of a component.

LicenseContext

Specifies when you can use a licensed object and provides a way of obtaining additional services needed to support licenses running within its domain.

LicenseException

Represents the exception thrown when a component cannot be granted a license.

LicenseManager

Provides properties and methods to add a license to a component and to manage a LicenseProvider. This class cannot be inherited.

LicenseProvider

Provides the abstract base class for implementing a license provider.

LicenseProviderAttribute

Specifies the LicenseProvider to use with a class. This class cannot be inherited.

LicenseUsageMode

Specifies when the License can be used.

LicFileLicenseProvider

Provides an implementation of a LicenseProvider. The provider works in a similar fashion to the Microsoft .NET Framework standard licensing model.

ListBindableAttribute

Specifies that a list can be used as a data source. A visual designer should use this attribute to determine whether to display a particular list in a data-binding picker. This class cannot be inherited.

ListChangedEventArgs

Provides data for the IBindingList.ListChanged event.

ListChangedEventHandler

Represents the method that will handle the IBindingList.ListChanged event of the IBindingList class.

ListChangedType

Specifies how the list changed.

ListSortDescription

Provides a description of the sort operation applied to a data source.

ListSortDescriptionCollection

Represents a collection of ListSortDescription objects.

ListSortDirection

Specifies the direction of a sort operation.

LocalizableAttribute

Specifies whether a property should be localized. This class cannot be inherited.

LookupBindingPropertiesAttribute

Specifies the properties that support lookup-based binding. This class cannot be inherited.

MarshalByValueComponent

Implements IComponent and provides the base implementation for remotable components that are marshaled by value (a copy of the serialized object is passed).

MaskedTextProvider

Represents a mask-parsing service that can be used by any number of controls that support masking, such as the MaskedTextBox control.

MaskedTextResultHint

Specifies values that succinctly describe the results of a masked text parsing operation.

MemberDescriptor

Represents a class member, such as a property or event. This is an abstract base class.

MergablePropertyAttribute

Specifies that this property can be combined with properties belonging to other objects in a Properties window.

MultilineStringConverter

Provides a type converter to convert multiline strings to a simple string.

NestedContainer

Provides the base implementation for the INestedContainer interface, which enables containers to have an owning component.

NotifyParentPropertyAttribute

Indicates that the parent property is notified when the value of the property that this attribute is applied to is modified. This class cannot be inherited.

NullableConverter

Provides automatic conversion between a nullable type and its underlying primitive type.

ParenthesizePropertyNameAttribute

Indicates whether the name of the associated property is displayed with parentheses in the Properties window. This class cannot be inherited.

PasswordPropertyTextAttribute

Indicates that an object's text representation is obscured by characters such as asterisks. This class cannot be inherited.

ProgressChangedEventArgs

Provides data for the BackgroundWorker.ProgressChanged event.

ProgressChangedEventHandler

Represents the method that will handle the BackgroundWorker.ProgressChanged event of the BackgroundWorker class. This class cannot be inherited.

PropertyChangedEventArgs

Provides data for the INotifyPropertyChanged.PropertyChanged event.

PropertyChangedEventHandler

Represents the method that will handle the INotifyPropertyChanged.PropertyChanged event raised when a property is changed on a component.

PropertyChangingEventArgs

Provides data for the INotifyPropertyChanging.PropertyChanging event.

PropertyChangingEventHandler

Represents the method that will handle the INotifyPropertyChanging.PropertyChanging event of an INotifyPropertyChanging interface.

PropertyDescriptor

Provides an abstraction of a property on a class.

PropertyDescriptorCollection

Represents a collection of PropertyDescriptor objects.

PropertyTabAttribute

Identifies the property tab or tabs to display for the specified class or classes.

PropertyTabScope

Defines identifiers that indicate the persistence scope of a tab in the Properties window.

ProvidePropertyAttribute

Specifies the name of the property that an implementer of IExtenderProvider offers to other components. This class cannot be inherited

ReadOnlyAttribute

Specifies whether the property this attribute is bound to is read-only or read/write. This class cannot be inherited

RecommendedAsConfigurableAttribute

Specifies that the property can be used as an application setting.

ReferenceConverter

Provides a type converter to convert object references to and from other representations.

RefreshEventArgs

Provides data for the TypeDescriptor.Refreshed event.

RefreshEventHandler

Represents the method that handles the TypeDescriptor.Refreshed event raised when a Type or component is changed during design time.

RefreshProperties

Defines identifiers that indicate the type of a refresh of the Properties window.

RefreshPropertiesAttribute

Indicates that the property grid should refresh when the associated property value changes. This class cannot be inherited.

RunInstallerAttribute

Specifies whether the Visual Studio Custom Action Installer or the Installer Tool (Installutil.exe) should be invoked when the assembly is installed.

RunWorkerCompletedEventArgs

Provides data for the MethodNameCompleted event.

RunWorkerCompletedEventHandler

Represents the method that will handle the BackgroundWorker.RunWorkerCompleted event of a BackgroundWorker class.

SByteConverter

Provides a type converter to convert 8-bit unsigned integer objects to and from a string.

SettingsBindableAttribute

Specifies when a component property can be bound to an application setting.

SingleConverter

Provides a type converter to convert single-precision, floating point number objects to and from various other representations.

StringConverter

Provides a type converter to convert string objects to and from other representations.

SyntaxCheck

Provides methods to verify the machine name and path conform to a specific syntax. This class cannot be inherited.

TimeSpanConverter

Provides a type converter to convert TimeSpan objects to and from other representations.

ToolboxItemAttribute

Represents an attribute of a toolbox item.

ToolboxItemFilterAttribute

Specifies the filter string and filter type to use for a toolbox item.

ToolboxItemFilterType

Defines identifiers used to indicate the type of filter that a ToolboxItemFilterAttribute uses.

TypeConverter

Provides a unified way of converting types of values to other types, as well as for accessing standard values and subproperties.

TypeConverter+SimplePropertyDescriptor
TypeConverter+StandardValuesCollection
TypeConverterAttribute

Specifies what type to use as a converter for the object this attribute is bound to.

TypeDescriptionProvider

Provides supplemental metadata to the TypeDescriptor.

TypeDescriptionProviderAttribute

Specifies the custom type description provider for a class. This class cannot be inherited.

TypeDescriptor

Provides information about the characteristics for a component, such as its attributes, properties, and events. This class cannot be inherited.

TypeListConverter

Provides a type converter that can be used to populate a list box with available types.

UInt16Converter

Provides a type converter to convert 16-bit unsigned integer objects to and from other representations.

UInt32Converter

Provides a type converter to convert 32-bit unsigned integer objects to and from various other representations.

UInt64Converter

Provides a type converter to convert 64-bit unsigned integer objects to and from other representations.

WarningException

Specifies an exception that is handled as a warning instead of an error.

Win32Exception

Throws an exception for a Win32 error code.