Partilhar via


ProvideLanguageEditorOptionPageAttribute Classe

Definição

Forneça um método geral para definir a página de opção de ferramenta de editor de um serviço de idioma.

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

Exemplos

Este exemplo mostra como esse atributo definido pelo usuário é usado para registrar duas páginas de propriedades ("Geral" e "Recuo") e um nó de página de propriedades ("Formatação") que contém a página de propriedades "Recuo". Observe como o segundo parâmetro para o construtor especifica a posição no registro em relação ao nó.

Observação

O Visual C# permite uma forma abreviada de um atributo definido pelo usuário removendo a parte "Atributo" do nome. Esse formulário abreviado é usado neste e em todos os outros exemplos em toda essa classe.

using Microsoft.VisualStudio.Shell;  

namespace MyLanguagePackage  
{  
    internal class MyConstants  
    {  
        public const string languageName                = "MyLanguage";  
        public const string formattingNodeResIDAsString = "#108";  
        public const string generalPageResIDAsString    = "#109";  
        public const string indentPageResIDAsString     = "#110";  
    }  

    [ProvideLanguageEditorOptionPage(MyConstants.languageName,  
                                     "General",  // property page  
                                     MyConstants.generalPageResIDAsString,  
        // Optional language service properties  
        OptionPageGuid = "{12434534-cecd-48e7-a866-45cad2e8b169}"  
                                    )]  
    [ProvideLanguageEditorOptionPage(MyConstants.languageName,  
                                     "Formatting",  // property node  
                                     MyConstants.formattingNodeResIDAsString  
                                    )]  
    [ProvideLanguageEditorOptionPage(MyConstants.languageName,  
                                     @"Formatting\Indent",  // property page  
                                     MyConstants.indentPageResIDAsString,  
        // Optional language service properties  
        OptionPageGuid = "{12434556-cecd-48e7-a866-45cad2e8b169}"  
                                    )]  

    class MyLanguagePackage  
    {  
    }  
}  

Comentários

Essas informações são armazenadas na chave <do Registro RegistrationRoot>\Languages\Language Services\[language]\EditorToolsOptions, em que [idioma] é o nome do idioma.

Em EditorToolsOptions há uma árvore de páginas e sub-páginas que pode aninhar qualquer número de níveis. Essas páginas correspondem às páginas de opções exibidas no Ferramentas do Visual Studio Opções para editores (em que uma árvore de páginas de opções é exibida sob o nome do idioma, cada página que contém as opções apropriadas).

Cada chave nesta lista de páginas de opção contém uma ID de recurso ou uma cadeia de caracteres literal que contém o nome localizado da página. Isso é o que realmente é mostrado na caixa de diálogo Opções de Ferramentas. Além disso, ele também contém um GUID de pacote e, opcionalmente, um GUID de uma página de opção.

Se não houver nenhum GUID de página de opção, a chave será considerada um nó na árvore de opções e não terá nenhuma página associada. Caso contrário, a chave é uma folha na árvore e sua página de opção será mostrada.

Pode haver várias instâncias desse atributo e cada instância especifica um nó ou uma página de propriedades. Os atributos podem aparecer em qualquer ordem. Se o GUID da página de propriedades for especificado, uma página de propriedades será registrada, caso contrário, será um nó registrado.

Os seguintes atributos definidos pelo usuário são usados para serviços de linguagem:

Atributo Descrição
ProvideLanguageServiceAttribute Registra o serviço de linguagem com o Visual Studio e especifica quais recursos têm suporte.
ProvideLanguageExtensionAttribute Associa uma extensão de arquivo ao serviço de idioma.
ProvideLanguageEditorOptionPageAttribute Especifica um nó de propriedade ou página para a caixa de diálogo Opções específica para o serviço de idioma.
ProvideLanguageCodeExpansionAttribute Especifica informações de localização para dar suporte a snippets de código no serviço de idioma.
ProvideServiceAttribute Registra um serviço de linguagem como um serviço do Visual Studio. Todos os serviços fornecidos no código gerenciado usam esse atributo.

Notas aos Herdeiros

Essa classe de atributo não pode ser herdada de, portanto, não há nada a implementar.

Notas aos Chamadores

Essa classe de atributo normalmente é aplicada à classe VSPackage primária, embora possa aparecer em qualquer classe. Essa classe de atributo pode aparecer várias vezes e em qualquer ordem, uma vez para cada página de propriedade e nó na árvore de página de propriedades.

Construtores

ProvideLanguageEditorOptionPageAttribute(Type, String, String, String, String, Int32)

Instancia uma nova instância de ProvideLanguageEditorOptionPageAttribute.

ProvideLanguageEditorOptionPageAttribute(Type, String, String, String, String, String)

Instancia uma nova instância de ProvideLanguageEditorOptionPageAttribute.

ProvideLanguageEditorOptionPageAttribute(Type, String, String, String, String, String[])

Instancia uma nova instância de ProvideLanguageEditorOptionPageAttribute.

Propriedades

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.

Keywords

Obtém as palavras-chave.

LanguageName

Obtém o nome do idioma.

PageGuid

Obtém o GUID da página de opção.

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)
TypeId

Substitua a propriedade TypeID para permitir que as classes derivadas de RegistrationAttribute funcionem com System.ComponentModel.TypeDescriptor.GetAttributes(...). Um atributo derivado deste terá que substituir essa propriedade somente se precisar de um controle melhor sobre as instâncias que podem ser aplicadas a uma classe.

(Herdado de RegistrationAttribute)

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)

Cria todas as chaves e entradas do Registro conforme especificado pelo construtor de classe.

Unregister(RegistrationAttribute+RegistrationContext)

Remove todas as chaves e entradas do Registro.

Aplica-se a