DesignSurface Clase

Definición

Presenta una interfaz de usuario para el diseño de componentes.

public ref class DesignSurface : IDisposable, IServiceProvider
public class DesignSurface : IDisposable, IServiceProvider
[System.Security.SecurityCritical]
public class DesignSurface : IDisposable, IServiceProvider
type DesignSurface = class
    interface IDisposable
    interface IServiceProvider
[<System.Security.SecurityCritical>]
type DesignSurface = class
    interface IDisposable
    interface IServiceProvider
Public Class DesignSurface
Implements IDisposable, IServiceProvider
Herencia
DesignSurface
Atributos
Implementaciones

Comentarios

La DesignSurface clase implementa lo que el usuario percibe como diseñador. DesignSurface es la interfaz de usuario que el usuario manipula para cambiar las características en tiempo de diseño. DesignSurface proporciona una superficie de diseño completamente independiente.

La DesignSurface clase se puede usar como diseñador independiente, o bien puede acoplarse con la DesignSurfaceManager clase para proporcionar una implementación común para una aplicación que hospeda varios DesignSurface objetos.

La DesignSurface clase se puede usar por sí misma o el usuario puede derivar una nueva clase de ella y aumentar el comportamiento.

La DesignSurface clase proporciona varios servicios en tiempo de diseño automáticamente. La DesignSurface clase agrega todos sus servicios en su constructor. La mayoría de estos servicios se pueden invalidar reemplazando en la propiedad protegida ServiceContainer . Para reemplazar un servicio, invalide el constructor, llame a base y realice los cambios a través de la propiedad protegida ServiceContainer . Todos los servicios que se agregan al contenedor de servicios y que implementan IDisposable se eliminan cuando se elimina la superficie de diseño. El conjunto predeterminado de servicios reemplazables que proporciona la DesignSurface clase se muestra en la tabla siguiente.

Servicio Descripción
IExtenderProviderService Permite que los objetos que no formen parte de la colección de componentes del contenedor proporcionen sus propios proveedores extensores.
IExtenderListService TypeDescriptor Lo usa para obtener una lista de proveedores extensores. Con este servicio, los proveedores extensores pueden residir fuera del contenedor.
ITypeDescriptorFilterService Proporciona enlaces de metadatos del diseñador. Esta es la interfaz principal para el filtrado de metadatos.
ISelectionService Proporciona una manera de seleccionar componentes en el diseñador.
IReferenceService Proporciona una manera de obtener un nombre para los objetos, incluso cuando esos objetos no están en el sitio.
DesignSurface Ofrece la propia superficie de diseño como servicio.
DesignerOptionService Proporciona una clase base para obtener y establecer valores de opciones de un diseñador.

En la tabla siguiente se muestran los servicios no reemplazables proporcionados de forma predeterminada.

Servicio Descripción
IComponentChangeService Genera eventos a medida que se realizan cambios en los componentes.
IDesignerHost Controla el acceso a tipos, servicios y transacciones. Interfaz principal para diseñadores.
IContainer Posee el conjunto de componentes que se están diseñando. Cada diseñador tiene un IContainer que posee los componentes.
IServiceContainer Deriva de IServiceProvider y proporciona una manera de agregar y quitar servicios del diseñador.

Además de estos servicios, la DesignSurface clase también proporciona un único servicio que está disponible a través del sitio de un componente. Este servicio es único para cada componente. En la tabla siguiente se muestran los servicios que no se pueden reemplazar.

Servicio Descripción
IDictionaryService Diccionario genérico de pares clave-valor que se pueden usar para almacenar datos arbitrarios sobre un componente.
INestedContainer Contenedor que permite a un componente agregar componentes secundarios adicionales al diseñador. Estos componentes formarán parte de la superficie de diseño, pero no participarán en la serialización. Esto resulta útil cuando desea diseñar un control capaz de exponer una región de sí mismo en un diseñador, pero no desea que la región participe en la serialización.

Además ISitede , el sitio también implementa las siguientes interfaces.

Precaución

Compruebe la existencia de estas interfaces, en lugar de usar la conversión indiscriminada, ya que es posible que otras implementaciones del sitio no las implementen.

Servicio Descripción
IServiceContainer Proporciona una manera de acceder al contenedor de servicios específicos del sitio. Por ejemplo, IDictionaryService es un servicio específico del sitio. Con este servicio, puede agregar servicios adicionales específicos del sitio.

Constructores

DesignSurface()

Inicializa una nueva instancia de la clase DesignSurface.

DesignSurface(IServiceProvider)

Inicializa una nueva instancia de la clase DesignSurface.

DesignSurface(IServiceProvider, Type)

Inicializa una nueva instancia de la clase DesignSurface.

DesignSurface(Type)

Inicializa una nueva instancia de la clase DesignSurface.

Propiedades

ComponentContainer

Obtiene la implementación de IContainer en la superficie de diseño.

DtelLoading

Obtiene un valor que indica si se está cargando la Lista de errores en tiempo de diseño.

IsLoaded

Obtiene un valor que indica si la superficie de diseño está cargada actualmente.

LoadErrors

Devuelve una colección de errores de carga o una colección nula.

ServiceContainer

Obtiene el contenedor de servicios.

View

Obtiene la vista para el diseñador raíz.

Métodos

BeginLoad(DesignerLoader)

Comienza el proceso de carga con el cargador de diseñadores especificado.

BeginLoad(Type)

Comienza el proceso de carga.

CreateComponent(Type)
Obsoletos.

Crea una instancia de un componente.

CreateDesigner(IComponent, Boolean)

Crea un diseñador cuando se agrega un componente al contenedor.

CreateInstance(Type)

Crea una instancia del tipo especificado.

CreateNestedContainer(IComponent)

Crea un contenedor adecuado para anidar controles o componentes.

CreateNestedContainer(IComponent, String)

Crea un contenedor adecuado para anidar controles o componentes.

Dispose()

Libera los recursos que usa DesignSurface.

Dispose(Boolean)

Libera los recursos utilizados por DesignSurface.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
Flush()

Serializa los cambios en la superficie de diseño.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetService(Type)

Obtiene un servicio del contenedor de servicios.

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
OnLoaded(LoadedEventArgs)

Genera el evento Loaded.

OnLoading(EventArgs)

Genera el evento Loading.

OnUnloaded(EventArgs)

Genera el evento Unloaded.

OnUnloading(EventArgs)

Genera el evento Unloading.

OnViewActivate(EventArgs)

Genera el evento ViewActivated.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Eventos

Disposed

Se produce cuando se desecha la superficie de diseño.

Flushed

Se produce cuando se realiza una llamada al método Flush() de DesignSurface.

Loaded

Se produce cuando se completa la carga del diseñador.

Loading

Se produce cuando el diseñador está a punto de cargarse.

Unloaded

Se produce cuando un diseñador ha finalizado la descarga.

Unloading

Se produce cuando un diseñador está a punto de descargarse.

ViewActivated

Se produce cuando se ha llamado al método Activate() en IDesignerHost.

Se aplica a

Consulte también