DesignSurface Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Apresenta uma interface de utilizador para desenhar 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
Observações
A DesignSurface classe implementa aquilo que o utilizador percebe como designer. DesignSurface é a interface de utilizador que o utilizador manipula para alterar as funcionalidades do design time. DesignSurface proporciona uma superfície de design completamente autónoma.
A DesignSurface classe pode ser usada como um designer independente, ou pode ser acoplada à DesignSurfaceManager classe para fornecer uma implementação comum para uma aplicação que aloja múltiplos DesignSurface objetos.
A DesignSurface classe pode ser usada sozinha, ou o utilizador pode derivar uma nova classe a partir dela e aumentar o comportamento.
A DesignSurface classe fornece vários serviços em tempo de projeto automaticamente. A DesignSurface classe adiciona todos os seus serviços no seu construtor. A maioria destes serviços pode ser anulada substituindo-os na propriedade protegida ServiceContainer . Para substituir um serviço, sobrescreva o construtor, chame a base e faça quaisquer alterações através da propriedade protegida ServiceContainer . Todos os serviços que são adicionados ao contentor 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 é apresentado na tabela seguinte.
| Service | Description |
|---|---|
| IExtenderProviderService | Permite que objetos que não fazem parte da coleção de componentes do contentor forneçam os seus próprios fornecedores de extensores. |
| IExtenderListService | Usado por TypeDescriptor para obter uma lista de fornecedores de extensores. Com este serviço, os fornecedores de extensores podem viver fora do contentor. |
| ITypeDescriptorFilterService | Fornece ganchos de metadados de designer. Esta é a interface principal para filtragem de metadados. |
| ISelectionService | Fornece uma forma de selecionar componentes no designer. |
| IReferenceService | Fornece uma forma de obter um nome para os objetos, mesmo quando esses objetos não estão localizados. |
| 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ções para um designer. |
A tabela seguinte mostra os serviços não substituíveis fornecidos por defeito.
| Service | Description |
|---|---|
| IComponentChangeService | Aumenta os eventos à medida que são feitas alterações aos componentes. |
| IDesignerHost | Controla o acesso a tipos, serviços e transações. Interface principal para designers. |
| IContainer | Detém o conjunto de componentes que estão a ser projetados. Cada designer tem um IContainer proprietário dos componentes. |
| IServiceContainer | Deriva de IServiceProvider e fornece uma forma de adicionar e remover serviços do designer. |
Para além destes serviços, a DesignSurface classe também oferece um único serviço disponível através do site de um componente. Este serviço é único para cada componente. A tabela seguinte mostra os serviços que não podem ser substituídos.
| Service | Description |
|---|---|
| IDictionaryService | Um dicionário genérico de pares chave/valor que pode ser usado para armazenar dados arbitrários sobre um componente. |
| INestedContainer | Um contentor que permite a um componente adicionar componentes filhos adicionais ao designer. Estes componentes farão parte da superfície de design, mas não participarão na serialização. Isto é útil quando se quer desenhar um controlo capaz de expor uma região de si próprio num designer, mas não se quer que a região participe na serialização. |
Além de ISite, o site também implementa as seguintes interfaces.
Atenção
Verifique a existência destas interfaces, em vez de usar casting indiscriminado, porque outras implementações de sites podem não as implementar.
| Service | Description |
|---|---|
| IServiceContainer | Proporciona uma forma de aceder ao contentor dos serviços site-specific. Por exemplo, IDictionaryService é um serviço site-specific. Com este serviço, pode adicionar serviços específicos para o local. |
Construtores
| Name | Description |
|---|---|
| DesignSurface() |
Inicializa uma nova instância da DesignSurface classe. |
| DesignSurface(IServiceProvider, Type) |
Inicializa uma nova instância da DesignSurface classe. |
| DesignSurface(IServiceProvider) |
Inicializa uma nova instância da DesignSurface classe. |
| DesignSurface(Type) |
Inicializa uma nova instância da DesignSurface classe. |
Propriedades
| Name | Description |
|---|---|
| ComponentContainer |
Obtém a IContainer implementação dentro da superfície de design. |
| DtelLoading |
Recebe um valor que indica se a Lista de Erros em Tempo de Projeto está a carregar. |
| IsLoaded |
Recebe um valor que indica se a superfície de projeto está atualmente carregada. |
| LoadErrors |
Devolve uma coleção de erros de carregamento ou uma coleção void. |
| ServiceContainer |
Recebe o contentor de serviço. |
| View |
Obtém a visualização para o root designer. |
Métodos
| Name | Description |
|---|---|
| BeginLoad(DesignerLoader) |
Inicia o processo de carregamento com o carregador projetado em questão. |
| BeginLoad(Type) |
Começa 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 contentor. |
| CreateInstance(Type) |
Cria uma instância do tipo dado. |
| CreateNestedContainer(IComponent, String) |
Cria um recipiente adequado para controlos ou componentes de aninhamento. |
| CreateNestedContainer(IComponent) |
Cria um recipiente adequado para controlos ou componentes de aninhamento. |
| Dispose() |
Liberta os recursos usados pelo DesignSurface. |
| Dispose(Boolean) |
Liberta os recursos usados pelo DesignSurface. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| Flush() |
Serializa alterações à superfície de design. |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetService(Type) |
Recebe um serviço do contentor de serviço. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| OnLoaded(LoadedEventArgs) |
Eleva o Loaded evento. |
| OnLoading(EventArgs) |
Eleva o Loading evento. |
| OnUnloaded(EventArgs) |
Eleva o Unloaded evento. |
| OnUnloading(EventArgs) |
Eleva o Unloading evento. |
| OnViewActivate(EventArgs) |
Eleva o ViewActivated evento. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
evento
| Name | Description |
|---|---|
| Disposed |
Ocorre quando a superfície de projeto é descartada. |
| Flushed |
Ocorre quando uma chamada é feita para o Flush() método de DesignSurface. |
| Loaded |
Ocorre quando a carga projetada está concluída. |
| Loading |
Ocorre quando o projetista está prestes a ser carregado. |
| Unloaded |
Ocorre quando um designer terminou de descarregar. |
| Unloading |
Ocorre quando um designer está prestes a descarregar. |
| ViewActivated |
Ocorre quando o Activate() método foi chamado a IDesignerHost. |