IDesignerLoaderService Interface


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

public interface class IDesignerLoaderService
public interface IDesignerLoaderService
type IDesignerLoaderService = interface
Public Interface IDesignerLoaderService


A 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 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 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 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, DependentLoadComplete is called, and the service decrements the counter. To set the number of dependent load processes, call AddLoadDependency once for each load process that calls DependentLoadComplete when its loading is complete. When the final loading is complete, the service calls EndLoad on the loader host.



Registers an external component as part of the load process managed by this interface.

DependentLoadComplete(Boolean, ICollection)

Signals that a dependent load has finished.


Reloads the design document.

Applies to