System.ComponentModel.Design Namespace
The System.ComponentModel.Design namespace contains classes that developers can use to build custom design-time behavior for components and user interfaces for configuring components at design time. The design time environment provides systems that enable developers to arrange components and configure their properties. Some components may require specific design-time only behavior to function properly in a design time environment. It may also be valuable to provide custom user interfaces which assist developers in configuring components or the values of complex data types. The classes and interfaces defined within this namespace can be used to build design-time behavior for components, access design-time services, and implement customized design-time configuration interfaces.
The classes in this namespace include:
- A basic IDesigner interface that you can use to customize design-time behavior for specific types of components.
- A ComponentDesigner class that provides a more sophisticated designer base class which implements the IDesigner, IDisposable, and IDesignerFilter interfaces.
- Designer interfaces and services that enable a designer to support additional functionality, including: IComponentChangeService, IDesignerEventService, IDesignerFilter, IDesignerHost, IDesignerOptionService, IDictionaryService, IEventBindingService, IExtenderListService, IExtenderProviderService, IHelpService, IInheritanceService, IMenuCommandService, IReferenceService, IResourceService, IRootDesigner, ISelectionService, IServiceContainer, ITypeDescriptorFilterService, and ITypeResolutionService.
- Classes that can be used to customize design-time license context management and serialization: DesigntimeLicenseContext and DesigntimeLicenseContextSerializer.
- Simple collection editors that can be extended: ArrayEditor and CollectionEditor.
Classes
| Class | Description |
|---|---|
| ActiveDesignerEventArgs | Provides data for the ActiveDesigner event. |
| ArrayEditor | Provides a user interface for editing arrays at design time. |
| ByteViewer | Displays byte arrays in hexadecimal, ANSI, and Unicode formats. |
| CheckoutException | The exception that is thrown when an attempt to check out a file that is checked into a source code management program is canceled or fails. |
| CollectionEditor | Provides a user interface that can edit most types of collections at design time. |
| CollectionEditor.CollectionForm | Provides a modal dialog box for editing the contents of a collection using a UITypeEditor. |
| CommandID | Represents a unique command identifier that consists of a numeric command ID and a GUID menu group identifier. |
| ComponentChangedEventArgs | Provides data for the ComponentChanged event. This class cannot be inherited. |
| ComponentChangingEventArgs | Provides data for the ComponentChanging event. This class cannot be inherited. |
| ComponentDesigner | Base designer class for extending the design mode behavior of a component. |
| ComponentDesigner. ShadowPropertyCollection | Represents a collection of shadow properties that should override inherited default or assigned values for specific properties. This class cannot be inherited. |
| ComponentEventArgs | Provides data for the ComponentAdded, ComponentAdding, ComponentRemoved, and ComponentRemoving events. |
| ComponentRenameEventArgs | Provides data for the ComponentRename event. |
| DesignerCollection | Represents a collection of designers. |
| DesignerEventArgs | Provides data for the DesignerCreated and DesignerDisposed events. |
| DesignerTransaction | Provides a way to group a series of design-time actions to improve performance and enable most types of changes to be undone. |
| DesignerTransactionCloseEventArgs | Provides data for the TransactionClosed and TransactionClosing events. |
| DesignerVerb | Represents a verb that can be invoked from a designer. |
| DesignerVerbCollection | Represents a collection of DesignerVerb objects. |
| DesigntimeLicenseContext | Represents a design-time license context that can support a license provider at design time. |
| DesigntimeLicenseContextSerializer | Provides support for design-time license context serialization. |
| LocalizationExtenderProvider | Provides design-time support for localization features to a root designer. |
| MenuCommand | Represents a Windows menu or toolbar command item. |
| ServiceContainer | Provides a simple implementation of the IServiceContainer interface. This class cannot be inherited. |
| StandardCommands | Defines identifiers for the standard set of commands that are available to most applications. |
| StandardToolWindows | Defines GUID identifiers that correspond to the standard set of tool windows that are available in the design environment. |
Interfaces
| Interface | Description |
|---|---|
| IComponentChangeService | Provides an interface to add and remove the event handlers for events that add, change, remove or rename components, and provides methods to raise a ComponentChanged or ComponentChanging event. |
| IDesigner | Provides the basic framework for building a custom designer. |
| IDesignerEventService | Provides event notifications when root designers are added and removed, when a selected compnent changes, and when the current root designer changes. |
| IDesignerFilter | Provides an interface that enables a designer to access and filter the dictionaries of a TypeDescriptor that stores the property, attribute, and event descriptors that a component designer can expose to the design-time environment. |
| IDesignerHost | Provides an interface for managing designer transactions and components. |
| IDesignerOptionService | Provides access to the designer options located on the Tools menu under the Options command in the Visual Studio .NET development environment. |
| IDictionaryService | Provides a basic, component site-specific, key-value pair dictionary through a service that a designer can use to store user-defined data. |
| IEventBindingService | Provides a service for registering event handlers for component events. |
| IExtenderListService | Provides an interface that can list extender providers. |
| IExtenderProviderService | Provides an interface for adding and removing extender providers at design time. |
| IHelpService | Provides methods for showing Help topics and adding and removing Help keywords at design time. |
| IMenuCommandService | Provides methods to manage the global designer verbs and menu commands available in design mode, and to show some types of context menus. |
| IReferenceService | Provides an interface for obtaining references to objects within a project by name or type, obtaining the name of a specified object, and for locating the parent of a specified object within a designer project. |
| IResourceService | Provides an interface for designers to access resource readers and writers for specific CultureInfo resource types. |
| IRootDesigner | Provides support for root-level designer view technologies. |
| ISelectionService | Provides an interface for a designer to select components. |
| IServiceContainer | Provides a container for services. |
| ITypeDescriptorFilterService | Provides an interface to modify the set of member descriptors for a component in design mode. |
| ITypeResolutionService | Provides an interface to retrieve an assembly or type by name. |
Delegates
| Delegate | Description |
|---|---|
| ActiveDesignerEventHandler | Represents the method that will handle the ActiveDesignerChanged event. |
| ComponentChangedEventHandler | Represents the method that will handle a ComponentChanged event. |
| ComponentChangingEventHandler | Represents the method that will handle a ComponentChanging event. |
| ComponentEventHandler | Represents the method that will handle the ComponentAdding, ComponentAdded, ComponentRemoving, and ComponentRemoved events raised for component-level events. |
| ComponentRenameEventHandler | Represents the method that will handle a ComponentRename event. |
| DesignerEventHandler | Represents the method that will handle the DesignerCreated and DesignerDisposed events that are raised when a document is created or disposed of. |
| DesignerTransactionCloseEventHandler | Represents the method that handles the TransactionClosed and TransactionClosing events of a designer. |
| ServiceCreatorCallback | Provides a callback mechanism that can create an instance of a service on demand. |
Enumerations
| Enumeration | Description |
|---|---|
| DisplayMode | Defines identifiers that indicate the display modes used by ByteViewer. |
| HelpContextType | Defines identifiers that indicate information about the context in which a request for Help information originated. |
| HelpKeywordType | Defines identifiers that indicate the type of a Help keyword. |
| SelectionTypes | Defines identifiers that indicate the type of a selection. |
| ViewTechnology | Defines identifiers for a set of technologies that designer hosts support. |