DesignSurface Classe

Definição

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.

Aplica-se a

Ver também