System.ComponentModel.Design.Serialization Namespace
The System.ComponentModel.Design.Serialization namespace provides types that support customization and control of serialization at design time.
The classes in this namespace can be divided into the following categories:
Serialization attributes that can be used to indicate the serializer to use for a specific type: DesignerSerializerAttribute, to indicate the serializer to use for a particular type; and RootDesignerSerializerAttribute, to indicate the base serializer to use for the root designer.
Classes that a designer can implement to customize serialization: IDesignerLoaderHost, for loading a designer document from a serialized state; and IDesignerLoaderService, for loading a designer document when external components and asynchronous loading are involved.
Interfaces that a designer can use to manage the serialization process: IDesignerSerializationManager, to register or retrieve custom serializers; IDesignerSerializationProvider, to make a serializer available to an IDesignerSerializationManager; and IDesignerSerializationService, which provides methods to invoke serialization and deserialization.
An interface that can be implemented to customize the loading process of a designer: DesignerLoader.
An interface that can be used to optimize the reloading of a designer: ICodeDomDesignerReload.
Other helper classes: INameCreationService, an interface for generating unique names for objects; ContextStack, a data structure useful for sharing serialization context information with serializers; and InstanceDescriptor, an object that can describe a serializable object.
| Class | Description | |
|---|---|---|
![]() | BasicDesignerLoader | Provides an implementation of the IDesignerLoaderService interface. |
![]() | CodeDomComponentSerializationService | Serializes a set of components into a serialization store. |
![]() | CodeDomDesignerLoader | Provides the base class for implementing a CodeDOM-based designer loader. |
![]() | CodeDomLocalizationProvider | Provides CodeDOM resource serialization services. This class cannot be inherited. |
![]() | CodeDomSerializer | Serializes an object graph to a series of CodeDOM statements. This class provides an abstract base class for a serializer. |
![]() | CodeDomSerializerBase | Provides a base class for CodeDomSerializer classes. |
![]() | CodeDomSerializerException | The exception that is thrown when line number information is available for a serialization error. |
![]() | CollectionCodeDomSerializer | Serializes collections. |
![]() | ComponentSerializationService | Provides the base class for serializing a set of components or serializable objects into a serialization store. |
![]() | ContextStack | Provides a stack object that can be used by a serializer to make information available to nested serializers. |
![]() | DefaultSerializationProviderAttribute | The DefaultSerializationProviderAttribute attribute is placed on a serializer to indicate the class to use as a default provider of that type of serializer. |
![]() | DesignerLoader | Provides a basic designer loader interface that can be used to implement a custom designer loader. |
![]() | DesignerSerializationManager | Provides an implementation of the IDesignerSerializationManager interface. |
![]() | DesignerSerializerAttribute | Indicates a serializer for the serialization manager to use to serialize the values of the type this attribute is applied to. This class cannot be inherited. |
![]() | ExpressionContext | Provides a means of passing context state among serializers. This class cannot be inherited. |
![]() | InstanceDescriptor | Provides the information necessary to create an instance of an object. This class cannot be inherited. |
![]() | MemberCodeDomSerializer | Provides the base class for serializing a reflection primitive within the object graph. |
![]() | MemberRelationshipService | Provides the base class for relating one member to another. |
![]() | ObjectStatementCollection | Holds a table of statements that is offered by the StatementContext. This class cannot be inherited. |
![]() | ResolveNameEventArgs | Provides data for the ResolveName event. |
![]() | RootContext | A CodeDomSerializer adds a root context to provide a definition of the root object. This class cannot be inherited |
![]() | RootDesignerSerializerAttribute | Obsolete. Indicates the base serializer to use for a root designer object. This class cannot be inherited. |
![]() | SerializationStore | Provides the base class for storing serialization data for the ComponentSerializationService. |
![]() | SerializeAbsoluteContext | Specifies that serializers should handle default values. This class cannot be inherited. |
![]() | StatementContext | Provides a location into which statements can be serialized. This class cannot be inherited. |
![]() | TypeCodeDomSerializer | Serializes an object to a new type. |
| Structure | Description | |
|---|---|---|
![]() | MemberRelationship | Represents a single relationship between an object and a member. |
| Interface | Description | |
|---|---|---|
![]() | ICodeDomDesignerReload | Provides an interface that can be used to optimize the reloading of a designer. |
![]() | IDesignerLoaderHost | Provides an interface that can extend a designer host to support loading from a serialized state. |
![]() | IDesignerLoaderHost2 | Provides an interface that extends IDesignerLoaderHost to specify whether errors are tolerated while loading a design document. |
![]() | IDesignerLoaderService | Provides an interface that can extend a designer loader to support asynchronous loading of external components. |
![]() | IDesignerSerializationManager | Provides an interface that can manage design-time serialization. |
![]() | IDesignerSerializationProvider | Provides an interface that enables access to a serializer. |
![]() | IDesignerSerializationService | Provides an interface that can invoke serialization and deserialization. |
![]() | INameCreationService | Provides a service that can generate unique names for objects. |
| Delegate | Description | |
|---|---|---|
![]() | ResolveNameEventHandler | Represents the method that handles the ResolveName event of a serialization manager. |
| Enumeration | Description | |
|---|---|---|
![]() | BasicDesignerLoader.ReloadOptions | Defines the behavior of the Reload method. These flags can be combined using the bitwise OR operator. |
![]() | CodeDomLocalizationModel | Determines the localization model to be used by the CodeDom resource adapter. |





