Compartilhar via


DesignSurface Classe

Definição

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 autocontida.

A DesignSurface classe pode ser usada como um designer autônomo ou pode ser associada à 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 a 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.

Service Descrição
IExtenderProviderService Permite que objetos que não fazem parte da coleção de componentes do contêiner forneçam seus próprios provedores de extensor.
IExtenderListService Usado para TypeDescriptor 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 colocados no site.
DesignSurface Oferece a própria superfície de design como um serviço.
DesignerOptionService Fornece uma classe base para obter e definir valores de opção para um designer.

A tabela a seguir mostra os serviços não substituíveis fornecidos por padrão.

Service 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 IServiceProvider Deriva 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 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.

Service 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 projetar 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 disso 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.

Service 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

Nome Description
DesignSurface()

Inicializa uma nova instância da classe DesignSurface.

DesignSurface(IServiceProvider, Type)

Inicializa uma nova instância da classe DesignSurface.

DesignSurface(IServiceProvider)

Inicializa uma nova instância da classe DesignSurface.

DesignSurface(Type)

Inicializa uma nova instância da classe DesignSurface.

Propriedades

Nome Description
ComponentContainer

Obtém a IContainer implementação dentro da superfície de design.

DtelLoading

Obtém um valor que indica se a Lista de Erros em Tempo de Design está sendo carregada.

IsLoaded

Obtém um valor que indica se a superfície de design está carregada no momento.

LoadErrors

Retorna uma coleção de erros de carregamento ou uma coleção vazia.

ServiceContainer

Obtém o contêiner de serviço.

View

Obtém a exibição do designer raiz.

Métodos

Nome Description
BeginLoad(DesignerLoader)

Inicia o processo de carregamento com o carregador de designer especificado.

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, String)

Cria um contêiner adequado para aninhar controles ou componentes.

CreateNestedContainer(IComponent)

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 as alterações na superfície de design.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetService(Type)

Obtém um serviço do contêiner de serviço.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(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

Nome Description
Disposed

Ocorre quando a superfície de design é descartada.

Flushed

Ocorre quando uma chamada é feita para o Flush() método de DesignSurface.

Loaded

Ocorre quando a carga do designer é concluída.

Loading

Ocorre quando o designer está prestes a ser carregado.

Unloaded

Ocorre quando um designer termina de descarregar.

Unloading

Ocorre quando um designer está prestes a descarregar.

ViewActivated

Ocorre quando o Activate() método foi chamado IDesignerHost.

Aplica-se a

Confira também