Partilhar via


ProvideOptionPageAttribute Classe

Definição

Aplique esse atributo a objetos independentes para permitir que os usuários configurem o VSPackages por meio de uma página personalizada de Opções de Ferramentas.

public ref class ProvideOptionPageAttribute sealed : Microsoft::VisualStudio::Shell::ProvideOptionDialogPageAttribute
public ref class ProvideOptionPageAttribute sealed : Microsoft::VisualStudio::Shell::ProvideOptionDialogPageAttribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)]
public sealed class ProvideOptionPageAttribute : Microsoft.VisualStudio.Shell.ProvideOptionDialogPageAttribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)>]
type ProvideOptionPageAttribute = class
    inherit ProvideOptionDialogPageAttribute
Public NotInheritable Class ProvideOptionPageAttribute
Inherits ProvideOptionDialogPageAttribute
Herança
Atributos

Exemplos

No exemplo abaixo, uma instância de ProvideOptionPageAttribute é aplicada a uma implementação do VSPackage para registrar a classe DesignerOptionsPage, que é derivada de DialogPage, como fornecendo ao VSPackage uma página Opções de Ferramentas .

Classes derivadas de DialogPage são fornecidas com uma implementação padrão da funcionalidade de configurações do Visual Studio, que pode ser substituída. O IDE usa esse suporte para configurações do Visual Studio se, como no exemplo, ProvideProfileAttribute for aplicado à implementação do VSPackage. Para obter mais informações sobre o suporte a configurações do Visual Studio, consulte Estendendo as configurações e opções do usuário.

using Microsoft.VisualStudio.Shell;  
namespace Example  
{  
[DefaultRegistryRoot("Software\\Microsoft\\VisualStudio\\8.0")]   
[ProvideOptionPage(typeof(DesignerOptionsPage), "MyDesigner", "OptionPage", 1000, 1001, true)]   
[ProvideProfileAttribute(typeof(DesignerOptionsPage), "MyDesigner", "OptionPage", 1002, 1003, true)]  
[ProvideProfileAttribute(typeof(PersistCurrentDesign), "MyDesigner","CurrentDesign", 1004, 1005, false)]  
[Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")]  
public class MyPackage : Package  
{  
//Implementation here  
}  

[Guid("YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY")]  
internal class DesignerOptionsPage: DialogPage {  
//Implementation here  
}  

[Guid("ZZZZZZZZ-ZZZZ-ZZZZ-ZZZZ-ZZZZZZZZZZZZ")]  
internal class PersistCurrentDesign: IProfileManager {  
//Implementation here  
}  

Comentários

Notas para implementadores

Aplique o às ProvideOptionPageAttribute classes que implementam um VSPackage. Esse atributo permite registrar que um objeto independente específico fornece aos usuários do VSPackage acesso de configuração por meio de uma página personalizada de Opções de Ferramentas .

Contexto do atributo

Aplica-se a Os VSPackages permitem a configuração por meio de páginas de Opções de Ferramentas personalizadas implementadas por meio da Estrutura de DialogPage Pacotes Gerenciados ou usando o código do SDK do Visual Studio.
Repetível Yes
Atributos obrigatórios DefaultRegistryRootAttribute
Atributos inválidos Nenhum

Observações para chamadores

Esse atributo é usado apenas para fins de registro e não afeta o comportamento de runtime do código.

O ProvideOptionPageAttribute registra uma determinada classe implementando ou DialogPage fornecendo IProfileManager um suporte específico do VSPackage para manter parte ou todo o estado do VSPackage por meio do mecanismo de configurações do Visual Studio. As informações de estado persistidas pela classe de implementação são conhecidas como uma categoria de configurações do Visual Studio e sua entrada de definição no registro é conhecida como um Ponto de Configurações Personalizadas.

Observação

Quando uma página Opções de Ferramentas personalizadas baseadas em Estrutura de Pacote Gerenciada é carregada, o IDE cria uma instância do objeto registrado por ProvideOptionPageAttribute como implementando-o. O suporte à página Opções de Ferramentas da Estrutura de Pacotes Gerenciados deve ser implementado em seu próprio objeto e não no VSPackage em si.

Para obter mais informações sobre como criar e aplicar instâncias do ProvideOptionPageAttribute, consulte o exemplo abaixo e ProvideOptionPageAttribute.

Construtores

ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, Int32)

Instancia uma nova instância de ProvideOptionPageAttribute.

ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, String)

Instancia uma nova instância de ProvideOptionPageAttribute.

ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, String[])

Instancia uma nova instância de ProvideOptionPageAttribute.

Propriedades

CategoryDescriptionResourceId

A ID de um recurso que contém a descrição localizada da categoria pai da página. Essa propriedade só será usada se SupportsAutomation == true e SupportsProfiles == true. A descrição localizada aparece no assistente de configurações de importação/exportação.

CategoryName

Obtém o nome não localizado canônico da categoria da página Opções de Ferramentas.

CategoryPackageGuid

A ID do pacote que possui a categoria na qual esta página está registrada. Se isso não estiver definido, presume-se que o pacote seja aquele ao qual esse atributo é aplicado. Essa propriedade só será usada se SupportsAutomation == true e SupportsProfiles == true. Gere isso de um Guid com Guid.ToString("B").

CategoryResourceID

Obtém a ID do recurso de categoria para uma página Opções de Ferramentas.

DescriptionResourceId

A ID de um recurso que contém a descrição localizada da página. Essa propriedade só será usada se SupportsAutomation == true e SupportsProfiles == true. A descrição localizada aparece no assistente de configurações de importação/exportação.

IsInUnifiedSettings

Obtém ou define um valor que indica se as configurações nesta página foram integradas às Configurações Unificadas por meio da criação de um novo registro. Se for true, a página ficará oculta quando As Configurações Unificadas estiverem habilitadas para que suas configurações não sejam duplicadas.

IsServerAware

Obtém ou define um valor que indica se a interface do usuário desta página mostra as configurações sincronizadas com o servidor em um cenário cliente-servidor conectado usando ISettingsManager3 ou uma API com funcionalidade semelhante.

Keywords

Obtém as palavras-chave pesquisáveis para esta página de opções. Cada palavra-chave pode ser uma cadeia de caracteres literal, um nome/ID de recurso (prefixado com "@"/"#") apontando para uma única palavra-chave ou um nome/ID de recurso (prefixado com "@"/"#") apontando para uma lista delimitada por ponto e vírgula de palavras-chave.

NoShowAllView

Obtém ou define se páginas de Opções de Ferramentas agregadas são mostradas.

PageName

Obtém o nome não localizado canônico da página Opções de Ferramentas.

PageNameResourceId

Obtém a ID do recurso de nome da página.

(Herdado de ProvideOptionDialogPageAttribute)
PageType

Obtém o tipo da página.

(Herdado de ProvideOptionDialogPageAttribute)
ProfileMigrationType

Define o tipo de migração de perfil.

ProvidesLocalizedCategoryName

Determina se o pacote tem os recursos localizados para o nome da categoria.

Sort

A ordem de classificação para a página de opção. As páginas de opção são agrupadas na seguinte ordem:

1.  The General page
2.  Pages with a Sort value, sorted from low to high.
3.  Pages without a Sort value, sorted alphabetically.
SupportsAutomation

Obtém se uma implementação de página Opções de Ferramentas dá suporte à automação.

SupportsProfiles

Obtém ou define se uma implementação de página Opções de Ferramentas usa o mecanismo de configurações do Visual Studio para persistir seu estado.

TypeId

Obtém a instância atual do ProvideOptionPageAttribute.

UnifiedSettingsCategoryMoniker

Para páginas com IsInUnifiedSettings = false, obtém ou define o moniker da categoria pai na hierarquia Configurações Unificadas. Este pode ser um moniker que já existe, ou um que existe mais um "". Segmento delimitado. Se este último, uma nova categoria chamada por CategoryResourceID será criada na hierarquia Configurações Unificadas e esta página será inserida nela. Caso contrário, essa página será inserida na categoria existente.

VisibilityCmdUIContexts

Uma lista delimitada por ponto e vírgula de GUIDs UIContext. A página de opção fica visível quando qualquer UIContext na lista está ativo. Se isso não for especificado, a página de opção estará sempre visível.

Métodos

GetPackageRegKeyPath(Guid)

Obtém o caminho do Registro (em relação à raiz do registro do aplicativo) do VSPackage.

(Herdado de RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

Registra a página Opções de Ferramentas.

Unregister(RegistrationAttribute+RegistrationContext)

Remove a chave de página Opções de Ferramentas do Registro.

Aplica-se a