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.

Classes

AddingNewEventArgs

Provides data for the 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.

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.

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.

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.

CollectionChangeEventArgs

Provides data for the CollectionChanged event.

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.

CurrentChangedEventManager

Provides a WeakEventManager implementation so that you can use the "weak event listener" pattern to attach listeners for the CurrentChanged event.

CurrentChangingEventArgs

Provides information for the CurrentChanging event.

CurrentChangingEventManager

Provides a WeakEventManager implementation so that you can use the "weak event listener" pattern to attach listeners for the CurrentChanging event.

CustomTypeDescriptor

Provides a simple default implementation of the ICustomTypeDescriptor interface.

DataErrorsChangedEventArgs

Provides data for the 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.

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.

DependencyPropertyDescriptor

Provides an extension of PropertyDescriptor that accounts for the additional property characteristics of a dependency 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.

DesignerProperties

Provides attached properties used to communicate with a designer.

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 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 DoWork event handler.

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.

EnumConverter

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

ErrorsChangedEventManager

Provides a WeakEventManager implementation so that you can use the weak event listener pattern to attach listeners for the ErrorsChanged event.

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.

GroupDescription

Provides an abstract base class for types that describe how to divide the items in a collection into groups.

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.

ImmutableObjectAttribute

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

InheritanceAttribute

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

InitializationEventAttribute

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

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.

ItemPropertyInfo

Contains information about a property.

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.

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 ListChanged event.

ListSortDescription

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

ListSortDescriptionCollection

Represents a collection of ListSortDescription objects.

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.

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 ProgressChanged event.

PropertyChangedEventArgs

Provides data for the PropertyChanged event.

PropertyChangedEventManager

Provides a WeakEventManager implementation so that you can use the "weak event listener" pattern to attach listeners for the PropertyChanged event.

PropertyChangingEventArgs

Provides data for the PropertyChanging event.

PropertyDescriptor

Provides an abstraction of a property on a class.

PropertyDescriptorCollection

Represents a collection of PropertyDescriptor objects.

PropertyFilterAttribute

Specifies which properties should be reported by type descriptors, specifically the GetProperties(Object) method.

PropertyTabAttribute

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

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 Refreshed event.

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 Installutil.exe (Installer Tool) should be invoked when the assembly is installed.

RunWorkerCompletedEventArgs

Provides data for the MethodNameCompleted event.

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.

SortDescriptionCollection

Represents a collection of SortDescription objects.

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.

TypeConverter

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

TypeConverter.SimplePropertyDescriptor

Represents an abstract class that provides properties for objects that do not have properties.

TypeConverter.StandardValuesCollection

Represents a collection of values.

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.

Structs

SortDescription

Defines the direction and the property name to be used as the criteria for sorting a collection.

Interfaces

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.

ICollectionView

Enables collections to have the functionalities of current record management, custom sorting, filtering, and grouping.

ICollectionViewFactory

An interface that enables implementing collections to create a view to their data. Normally, user code does not call methods on this interface.

ICollectionViewLiveShaping

Defines properties that enables sorting, grouping, and filtering on a CollectionView in real time.

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.

IEditableCollectionView

Defines methods and properties that a CollectionView implements to provide editing capabilities to a collection.

IEditableCollectionViewAddNewItem

Defines methods and properties that a CollectionView implements to enable specifying adding items of a specific type.

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.

IItemProperties

Defines a property that provides information about an object's properties.

IListSource

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

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.

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.

IRaiseItemChangedEvents

Indicates whether a class converts property change events to 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.

Enums

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.

CollectionChangeAction

Specifies how the collection is changed.

DataObjectMethodType

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

DesignerSerializationVisibility

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

EditorBrowsableState

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

InheritanceLevel

Defines identifiers for types of inheritance levels.

LicenseUsageMode

Specifies when the License can be used.

ListChangedType

Specifies how the list changed.

ListSortDirection

Specifies the direction of a sort operation.

MaskedTextResultHint

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

NewItemPlaceholderPosition

Specifies where the placeholder for a new item appears in the collection.

PropertyFilterOptions

Specifies which properties should be reported by type descriptors, specifically the GetProperties(Object) method. This enumeration is used to specify the value of the Filter property.

PropertyTabScope

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

RefreshProperties

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

ToolboxItemFilterType

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

Delegates

AddingNewEventHandler

Represents the method that will handle the AddingNew event.

AsyncCompletedEventHandler

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

CancelEventHandler

Represents the method that handles a cancelable event.

CollectionChangeEventHandler

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

CurrentChangingEventHandler

Represents the method that handles the CurrentChanging event.

DoWorkEventHandler

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

HandledEventHandler

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

ListChangedEventHandler

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

ProgressChangedEventHandler

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

PropertyChangedEventHandler

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

PropertyChangingEventHandler

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

RefreshEventHandler

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

RunWorkerCompletedEventHandler

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

Remarks

The classes in this namespace divide into the following categories: