DialogPage 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.
Fornece uma funcionalidade de caixa de diálogo padrão para implementar folhas de propriedades, Ferramentasoptions ou caixas de diálogo de interface do usuário personalizadas, com suporte para o modelo de automação do Visual Studio, Windows Forms e persistência de estado usando o mecanismo de configurações do Visual Studio.
public ref class DialogPage : System::ComponentModel::Component, Microsoft::VisualStudio::Shell::IProfileManager, System::Windows::Forms::IWin32Window
[System.Runtime.InteropServices.ComVisible(true)]
public class DialogPage : System.ComponentModel.Component, Microsoft.VisualStudio.Shell.IProfileManager, System.Windows.Forms.IWin32Window
[<System.Runtime.InteropServices.ComVisible(true)>]
type DialogPage = class
inherit Component
interface IWin32Window
interface IProfileManager
Public Class DialogPage
Inherits Component
Implements IProfileManager, IWin32Window
- Herança
-
DialogPage
- Derivado
- Atributos
- Implementações
Comentários
Notas para implementadores
Implemente classes derivadas de DialogPage quando você cria uma caixa de diálogo de usuário, especialmente uma página de Opções de ferramentas ou uma página de propriedades da caixa de ferramentas .
Observações para chamadores
A implementação mais simples do DialogPage requer apenas a definição de propriedades públicas na classe de implementação. Os tipos de propriedade devem dar suporte à conversão de e para cadeias de caracteres por meio de TypeConverter .
A implementação base de DialogPage fornece manipuladores padrão para eventos padrão do Windows e implementa o Component , o IWin32Window e o IProfileManager .
Classes derivadas de DialogPage têm o seguinte:
Suporte automático para compartilhamento de componentes por meio do Visual Studio modelo de objeto de automação do DTE.
Qualquer instância do DialogPage é um objeto de automação, porque a classe herda a Component implementação da interface.
Os aplicativos que devem acessar o objeto Automation da classe usam a AutomationObject propriedade.
A AutomationObject propriedade retorna
this(Mein Visual Basic ), porque a implementação de DialogPage já é um objeto de automação por padrão.Uma implementação do DialogPage pode oferecer um objeto de automação diferente de si mesmo substituindo a AutomationObject implementação base. Por exemplo, isso pode ser feito para fornecer uma interface do usuário separada e os modelos de objeto.
Suporte para o Visual Studio mecanismo de configurações, com base nas propriedades públicas do objeto Automation da classe derivada.
Para um objeto derivado de DialogPage para fornecer persistência, ele deve ser registrado usando ProvideProfileAttribute .
Tipos derivados de DialogPage herdam uma implementação de persistência padrão de IProfileManager .
A implementação padrão persiste todas as propriedades públicas do objeto Automation da classe derivado, que é o objeto retornado por AutomationObject e que dá suporte à conversão de e para cadeias de caracteres por meio de TypeConverter .
Esse comportamento pode ser alterado por meio da substituição LoadSettingsFromXml , SaveSettingsToXml , LoadSettingsFromStorage e SaveSettingsToStorage .
Uma interface do usuário padrão baseada nas propriedades públicas do objeto Automation da classe derivada.
Para uma implementação de página de diálogo para fornecer uma página de Opções de ferramentas , ela deve ser registrada usando o ProvideOptionPageAttribute .
Para uma implementação de página de caixa de diálogo fornecer uma página de caixa de ferramentas , ela deve ser registrada usando o ProvideToolboxPageAttribute .
As páginas de diálogo usam Window para retornar um IWin32Window , que fornece um identificador para a janela que fornece a interface do usuário da classe.
Por padrão, a janela que é referenciada pelo Window é uma grade de propriedades, que é implementada por uma instância do PropertyGrid selecionando o objeto Automation.
A DialogPage classe base usa sua implementação de AutomationObject para obter o objeto de automação da classe e as propriedades públicas desse objeto de automação.
As alterações nas propriedades públicas feitas por meio da interface do usuário de uma página da caixa de diálogo são salvas automaticamente no armazenamento local (normalmente o registro) por uma chamada para o SaveSettingsToStorage método.
Uma implementação de página de diálogo pode alterar sua interface do usuário substituindo Window .
Observação
Normalmente, uma instância de uma classe de página de diálogo é seu próprio objeto de automação. Portanto, as propriedades que são persistentes ou exibidas são aquelas da classe derivada de DialogPage . No entanto, se AutomationObject o retornar outro objeto, será as propriedades do objeto, e não as classes, que serão persistentes ou exibidas.
Construtores
| DialogPage() |
Inicializa uma nova instância de DialogPage. |
| DialogPage(JoinableTaskContext) |
Cria uma instância de DialogPage. |
| DialogPage(JoinableTaskContext, ISettingsManager3) |
Cria uma instância de DialogPage. |
Propriedades
| AutomationObject |
Obtém o objeto de modelo de automação do DTE para uma determinada instância de uma classe de página de diálogo. |
| CancellationToken | |
| DpiMode | |
| SettingsRegistryPath |
Obtém ou define a subchave sob a raiz específica da versão do Visual Studio para armazenar dados de configuração para uma página de diálogo. |
| SharedSettingsStorePath |
Obtém o local onde as configurações são armazenadas no repositório de configurações compartilhadas. Ele se baseia em SharedSettingsAttribute em seu AutomationObject ou no nome completo do tipo se o atributo não for especificado. |
| Site |
Obtém ou define o site da página da caixa de diálogo. Substitui a implementação herdada de Component . |
| Window |
Obtém a janela usada como interface do usuário da página da caixa de diálogo. |
Métodos
| Dispose(Boolean) |
Libera os recursos não gerenciados que são usados por uma classe de página de diálogo e, opcionalmente, libera os recursos gerenciados; a classe pai Component oferece suporte a recursos não gerenciados. |
| DoCancelableOperationWithProgressUI(Action, String) |
Executa uma operação com a interface do usuário de progresso cancelável se for invocada no thread da interface do usuário quando a caixa de diálogo de opções estiver aberta. |
| DoCancelableOperationWithProgressUI(Func<CancellationToken,Task>, String) | |
| FinishPendingWorkAsync() | |
| GetDefaultPropertyValue(PropertyDescriptor) | |
| GetDpiAwareObject() | |
| GetSharedSettingsStorePath(PropertyDescriptor) |
Retorna o caminho do repositório de configurações compartilhadas para a propriedade fornecida. |
| IsPropertyValueMachineLocal(PropertyDescriptor, Object, String) |
Retorna se um determinado valor de uma propriedade em AutomationObject é local neste computador (vs. sendo móvel para outros computadores) |
| LoadSettingFromStorage(PropertyDescriptor) | |
| LoadSettingsFromStorage() |
Chamado pelo Visual Studio para carregar as configurações de uma página de diálogo do armazenamento local, geralmente o registro. |
| LoadSettingsFromXml(IVsSettingsReader) |
Chamado pelo Visual Studio para carregar as configurações de uma página de diálogo do armazenamento de configurações do Visual Studio em disco. |
| MapSerializablePropertyDescriptor(PropertyDescriptor, Object, PropertyDescriptor) |
Permite que uma propriedade diferente seja observada para alterações, em vez da propriedade descrita por |
| OnActivate(CancelEventArgs) |
Lida |
| OnApply(DialogPage+PageApplyEventArgs) |
Lida |
| OnClosed(EventArgs) |
Lida |
| OnDeactivate(CancelEventArgs) |
Lida |
| ResetSettings() |
Deve ser substituído para redefinir as configurações para seus valores padrão. |
| SaveSetting(PropertyDescriptor) | |
| SaveSettingsToStorage() |
Chamado pelo Visual Studio para armazenar as configurações de uma página de diálogo no armazenamento local, normalmente o registro. |
| SaveSettingsToXml(IVsSettingsWriter) |
Chamado pelo Visual Studio para armazenar as configurações de uma página de diálogo para o armazenamento de configurações do Visual Studio em disco. |
Implantações explícitas de interface
| IWin32Window.Handle |