Provides an interface that can extend a designer loader to support asynchronous loading of external components.

See Also: IDesignerLoaderService Members


public interface IDesignerLoaderService


A System.ComponentModel.Design.Serialization.DesignerLoader can implement this interface to manage designer loading that involves external components. This interface also allows external components to initiate a reload of the design surface by calling IDesignerLoaderService.Reload. A designer loader does not have to implement this interface if it does not require support for asynchronous loading.

Designer loading using a custom implementation of the System.ComponentModel.Design.Serialization.IDesignerLoaderService can occur in a variety of ways. Sometimes external components are involved in the loading process. To facilitate loading with external dependencies, the designer loader service interface provides a mechanism that determines when loading is complete and allows each portion of loading to signal that it has completed. The System.ComponentModel.Design.Serialization.IDesignerLoaderService typically determines when loading is complete by testing a counter that tracks the number of load dependencies remaining. When each portion of the load completes, IDesignerLoaderService.DependentLoadComplete(bool, ICollection) is called, and the service decrements the counter. To set the number of dependent load processes, call IDesignerLoaderService.AddLoadDependency once for each load process that calls IDesignerLoaderService.DependentLoadComplete(bool, ICollection) when its loading is complete. When the final loading is complete, the service calls IDesignerLoaderHost.EndLoad(string, bool, ICollection) on the loader host.


Namespace: System.ComponentModel.Design.Serialization
Assembly: System (in System.dll)
Assembly Versions: 1.0.3300.0, 1.0.5000.0,,