DesignSurface Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Apresenta uma interface do usuário para a criaçã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
- Herança
-
DesignSurface
- Atributos
- Implementações
Comentários
A DesignSurface classe implementa o que o usuário percebe como um designer. DesignSurface é a interface do usuário que o usuário manipula para alterar os recursos de tempo de design. DesignSurface fornece uma superfície de design completamente independente.
A DesignSurface classe pode ser usada como um designer autônomo ou pode ser acoplada à DesignSurfaceManager classe para fornecer uma implementação comum para um aplicativo que hospeda vários DesignSurface objetos.
A DesignSurface classe pode ser usada por si só ou o usuário pode derivar uma nova classe dela e aumentar o comportamento.
A DesignSurface classe fornece vários serviços de tempo de design automaticamente. A DesignSurface classe adiciona todos os seus serviços em seu construtor. A maioria desses serviços pode ser substituída substituindo-os na propriedade protegida ServiceContainer . Para substituir um serviço, substitua o construtor, chame base e faça alterações por meio da propriedade protegida ServiceContainer . Todos os serviços adicionados ao contêiner de serviço e que implementam IDisposable são descartados quando a superfície de design é descartada. O conjunto padrão de serviços substituíveis que a DesignSurface classe fornece é mostrado na tabela a seguir.
Serviço | Descrição |
---|---|
IExtenderProviderService | Habilita objetos que não fazem parte da coleção de componentes do contêiner para fornecer seus próprios provedores de extensor. |
IExtenderListService | Usado por TypeDescriptor para obter uma lista de provedores de extensor. Com esse serviço, os provedores de extensor podem viver fora do contêiner. |
ITypeDescriptorFilterService | Fornece ganchos de metadados do designer. Essa é a interface primária para filtragem de metadados. |
ISelectionService | Fornece uma maneira de selecionar componentes no designer. |
IReferenceService | Fornece uma maneira de obter um nome para objetos, mesmo quando esses objetos não são site. |
DesignSurface | Oferece a própria superfície de design como um serviço. |
DesignerOptionService | Fornece uma classe base para obter e configurar valores de opção para um designer. |
A tabela a seguir mostra os serviços não substituíveis fornecidos por padrão.
Serviço | Descrição |
---|---|
IComponentChangeService | Gera eventos à medida que são feitas alterações nos componentes. |
IDesignerHost | Controla o acesso a tipos, serviços e transações. Interface primária para designers. |
IContainer | Possui o conjunto de componentes que estão sendo projetados. Cada designer tem um IContainer que possui os componentes. |
IServiceContainer | Deriva de IServiceProvider e fornece uma maneira de adicionar e remover serviços do designer. |
Além desses serviços, a DesignSurface classe também fornece um único serviço que está disponível por meio do site de um componente. Esse serviço é exclusivo para cada componente. A tabela a seguir mostra os serviços que não podem ser substituídos.
Serviço | Descrição |
---|---|
IDictionaryService | Um dicionário genérico de pares chave/valor que pode ser usado para armazenar dados arbitrários sobre um componente. |
INestedContainer | Um contêiner que permite que um componente adicione componentes filho adicionais ao designer. Esses componentes farão parte da superfície de design, mas não participarão da serialização. Isso é útil quando você deseja criar um controle capaz de expor uma região de si mesmo em um designer, mas não deseja que a região participe da serialização. |
Além do ISite, o site também implementa as interfaces a seguir.
Cuidado
Verifique a existência dessas interfaces, em vez de usar a conversão indiscriminada, porque outras implementações de site podem não implementá-las.
Serviço | Descrição |
---|---|
IServiceContainer | Fornece uma maneira de acessar o contêiner de serviços específicos do site. Por exemplo, IDictionaryService é um serviço específico do site. Com esse serviço, você pode adicionar serviços adicionais específicos do site. |
Construtores
DesignSurface() |
Inicializa uma nova instância da classe DesignSurface. |
DesignSurface(IServiceProvider) |
Inicializa uma nova instância da classe DesignSurface. |
DesignSurface(IServiceProvider, Type) |
Inicializa uma nova instância da classe DesignSurface. |
DesignSurface(Type) |
Inicializa uma nova instância da classe DesignSurface. |
Propriedades
ComponentContainer |
Obtém a implementação de IContainer na superfície de design. |
DtelLoading |
Obtém um valor que indica se a Lista de Erros de Tempo de Design está carregando. |
IsLoaded |
Obtém um valor que indica se a superfície de design está atualmente carregada. |
LoadErrors |
Retorna uma coleção de carregamento de erros ou uma coleção nula. |
ServiceContainer |
Obtém o contêiner de serviço. |
View |
Obtém a exibição do designer raiz. |
Métodos
BeginLoad(DesignerLoader) |
Inicia o processo de carregamento com o carregador de designer fornecido. |
BeginLoad(Type) |
Inicia o processo de carregamento. |
CreateComponent(Type) |
Obsoleto.
Cria uma instância de um componente. |
CreateDesigner(IComponent, Boolean) |
Cria um designer quando um componente é adicionado ao contêiner. |
CreateInstance(Type) |
Cria uma instância do tipo fornecido. |
CreateNestedContainer(IComponent) |
Cria um contêiner adequado para aninhar controles ou componentes. |
CreateNestedContainer(IComponent, String) |
Cria um contêiner adequado para aninhar controles ou componentes. |
Dispose() |
Libera os recursos usados pelo DesignSurface. |
Dispose(Boolean) |
Libera os recursos usados pelo DesignSurface. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
Flush() |
Serializa alterações para a superfície de design. |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetService(Type) |
Obtém um serviço de contêiner de serviço. |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
OnLoaded(LoadedEventArgs) |
Aciona o evento Loaded. |
OnLoading(EventArgs) |
Aciona o evento Loading. |
OnUnloaded(EventArgs) |
Aciona o evento Unloaded. |
OnUnloading(EventArgs) |
Aciona o evento Unloading. |
OnViewActivate(EventArgs) |
Aciona o evento ViewActivated. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Eventos
Disposed |
Ocorre quando a superfície de design é descartada. |
Flushed |
Ocorre quando uma chamada é feita para o método Flush() de DesignSurface. |
Loaded |
Ocorre após a conclusão do carregamento do designer. |
Loading |
Ocorre quando o designer está prestes a ser carregado. |
Unloaded |
Ocorre quando o descarregamento de um designer foi concluído. |
Unloading |
Ocorre quando um designer está prestes a ser descarregado. |
ViewActivated |
Ocorre quando o método Activate() foi chamado em IDesignerHost. |