System [00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00] 1.0.3300.0 1.0.5000.0 2.0.0.0 4.0.0.0 Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details. System.IServiceProvider

A designer can utilize to access services useful to managing design-time serialization processes. For example, a class that implements the designer serialization manager can use this interface to create objects, look up types, identify objects, and customize the serialization of particular types.

Provides an interface that can manage design-time serialization.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void ``

  This method adds a custom serialization provider to the serialization manager. Serialization providers can provide custom serializers for a particular type of object or set of types of objects. During serialization, each custom serialization provider is queried to return a serializer for a specific data type, if it can provide one. The serialization manager uses the custom serializer provided by this method before using the default serializer for a particular type.

  Adds the specified serialization provider to the serialization manager.

  The serialization provider to add.
- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.ComponentModel.Design.Serialization.ContextStack To be added: an object of type 'ContextStack'

  This storage area provides communication of object context information to serializers. Context information about objects that are being serialized can be stored and accessed through this .

  Gets a stack-based, user-defined storage area that is useful for communication between serializers.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Object `` `` `` ``

  Objects that implement are added to the design-time container if the parameter is true.

  Creates an instance of the specified type and adds it to a collection of named instances.

  The newly created object instance.

  The data type to create. The arguments to pass to the constructor for this type. The name of the object. This name can be used to access the object later through . If null is passed, the object is still created but cannot be accessed by name. If true, this object is added to the design container. The object must implement for this to have any effect.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Object ``

  The name of the object to retrieve must have been set through a prior call to .

  Gets an instance of a created object of the specified name, or null if that object does not exist.

  An instance of the object with the given name, or null if no object by that name can be found.

  The name of the object to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String `` To be added

  Gets the name of the specified object, or null if the object has no name.

  The name of the object, or null if the object is unnamed.

  The object to retrieve the name for.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Object `` `` To be added

  Gets a serializer of the requested type for the specified object type.

  An instance of the requested serializer, or null if no appropriate serializer can be located.

  The type of the object to get the serializer for. The type of the serializer to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Type `` To be added

  Gets a type of the specified name.

  An instance of the type, or null if the type cannot be loaded.

  The fully qualified name of the type to load.
- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.ComponentModel.PropertyDescriptorCollection To be added: an object of type 'ComponentModel.PropertyDescriptorCollection'

  This property can contain an empty collection. A serializer should never assume that such properties exist. A derived class or implementation of defines the set of properties that are exposed here.

  Indicates custom properties that can be serializable with available serializers.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` To be added

  Removes a custom serialization provider from the serialization manager.

  The provider to remove. This object must have been added using .
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void ``

  If the serialization manager supports logging multiple errors in its implementation of , it can store the error information object for a future report where all the errors encountered can be displayed at once. If this method stores multiple errors, serialization can continue after a call to this method. If this method does not support logging multiple errors, this method should throw an exception, which aborts serialization.

  The serialization manager should never throw an exception for errors encountered during serialization. It should only throw an exception during deserialization. Otherwise, users become confused because saving the document should never fail.

  Reports an error in serialization.

  The error to report. This information object can be of any object type. If it is an exception, the message of the exception is extracted and reported to the user. If it is any other type, is called to display the information to the user.
- Event
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.ComponentModel.Design.Serialization.ResolveNameEventHandler

  This event provides a way for a serializer to create an object on demand, so that the serializer does not have to order object creation by dependency. The delegate for this event is cleared immediately after serialization or deserialization is complete.

  Occurs when cannot locate the specified name in the serialization manager's name table.

- Event
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.EventHandler

  This event is raised when serialization or deserialization is complete.

  Generally, serialization code is written to emit serialization data and does not typically require state-related checking and processing. If it is necessary to maintain state data throughout serialization, data can be set and accessed by a serializer, which can listen to the event, and clear the data after serialization. Restoring the proper state after serialization can be important because serializers can be reused during serialization, and leftover state data or open streams might not be correct.

  For example, if a serializer needs to write to another file, such as a resource file, it is inefficient to design the serializer to close the file when finished. Serializing an object graph usually requires several serializers. The resource file would be opened and closed many times. Instead, the resource file can be closed at the end of serialization by an object that listened to the event.

  Occurs when serialization is complete.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  This method is useful when it is necessary to create and then name an instance of an object without using . An exception is thrown if you try to rename an existing object or if you try to give a new object a name that is already taken.

  Sets the name of the specified existing object.

  The object instance to name. The name to give the instance.