ProvideLanguageEditorOptionPageAttribute Classe

Definizione

Fornire un metodo generale per impostare la pagina delle opzioni dello strumento dell'editor di un servizio di linguaggio.

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
Ereditarietà
ProvideLanguageEditorOptionPageAttribute
Attributi

Esempio

In questo esempio viene illustrato come viene usato questo attributo definito dall'utente per registrare due pagine delle proprietà ("Generale" e "Indent") e un nodo della pagina delle proprietà ("Formattazione") che contiene la pagina delle proprietà "Indent". Si noti che il secondo parametro del costruttore specifica la posizione nel Registro di sistema rispetto al nodo.

Nota

Visual C# consente una forma abbreviata di un attributo definito dall'utente eliminando la parte "Attribute" del nome. Questo formato abbreviato viene usato in questo e in tutti gli altri esempi in questa 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  
    {  
    }  
}  

Commenti

Queste informazioni vengono archiviate nella chiave <del Registro di sistema RegistrationRoot>\Languages\Language Services\[language]\EditorToolsOptions, dove [language] è il nome della lingua.

In EditorToolsOptions è un albero di pagine e pagine secondarie in grado di annidare qualsiasi numero di livelli. Queste pagine corrispondono alle pagine delle opzioni visualizzate nella Strumenti di Visual Studio Opzioni per gli editor (in cui viene visualizzato un albero di pagine di opzioni sotto il nome della lingua, ogni pagina contenente le opzioni appropriate).

Ogni chiave in questo elenco di pagine di opzioni contiene un ID risorsa o una stringa letterale contenente il nome localizzato della pagina. Questo è ciò che viene effettivamente visualizzato nella finestra di dialogo Opzioni strumenti. Inoltre, contiene anche un GUID del pacchetto e, facoltativamente, un GUID di una pagina di opzione.

Se non è presente alcun GUID di pagina di opzione, la chiave viene considerata un nodo nell'albero delle opzioni e non ha alcuna pagina associata. In caso contrario, la chiave è una foglia nell'albero e verrà visualizzata la relativa pagina di opzione.

Possono essere presenti più istanze di questo attributo e ogni istanza specifica un nodo o una pagina delle proprietà. Gli attributi possono essere visualizzati in qualsiasi ordine. Se viene specificato il GUID della pagina delle proprietà, viene registrata una pagina delle proprietà; in caso contrario, si tratta di un nodo registrato.

Per i servizi linguistici vengono usati gli attributi definiti dall'utente seguenti:

Attributo Descrizione
ProvideLanguageServiceAttribute Registra il servizio di linguaggio con Visual Studio e specifica le funzionalità supportate.
ProvideLanguageExtensionAttribute Associa un'estensione di file al servizio di linguaggio.
ProvideLanguageEditorOptionPageAttribute Specifica un nodo o una pagina delle proprietà per la finestra di dialogo Opzioni specifica per il servizio di linguaggio.
ProvideLanguageCodeExpansionAttribute Specifica le informazioni sulla posizione per supportare frammenti di codice nel servizio di linguaggio.
ProvideServiceAttribute Registra un servizio linguistico come servizio di Visual Studio. Tutti i servizi forniti nel codice gestito usano questo attributo.

Note per gli eredi

Questa classe di attributi non può essere ereditata da, pertanto non è necessario implementare alcun elemento.

Note per i chiamanti

Questa classe di attributi viene in genere applicata alla classe VSPackage primaria, anche se può essere visualizzata in qualsiasi classe. Questa classe di attributi può essere visualizzata più volte e in qualsiasi ordine, una volta per ogni pagina delle proprietà e nodo nell'albero delle pagine delle proprietà.

Costruttori

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

Crea un'istanza di una nuova istanza di ProvideLanguageEditorOptionPageAttribute.

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

Crea un'istanza di una nuova istanza di ProvideLanguageEditorOptionPageAttribute.

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

Crea un'istanza di una nuova istanza di ProvideLanguageEditorOptionPageAttribute.

Proprietà

IsInUnifiedSettings

Ottiene o imposta un valore che indica se le impostazioni in questa pagina sono state caricate in Impostazioni unificate tramite la creazione di una nuova registrazione. Se true, la pagina viene nascosta quando le impostazioni unificate sono abilitate in modo che le impostazioni non vengano duplicate.

Keywords

Ottiene le parole chiave.

LanguageName

Ottiene il nome del linguaggio.

PageGuid

Ottiene il GUID della pagina di opzioni.

PageNameResourceId

Ottiene l'ID risorsa del nome della pagina.

(Ereditato da ProvideOptionDialogPageAttribute)
PageType

Ottiene il tipo della pagina.

(Ereditato da ProvideOptionDialogPageAttribute)
TypeId

Eseguire l'override della proprietà TypeID per consentire alle classi derivate RegistrationAttribute di usare System.ComponentModel.TypeDescriptor.GetAttributes(...). Un attributo derivato da questo deve eseguire l'override di questa proprietà solo se necessita di un controllo migliore sulle istanze che possono essere applicate a una classe.

(Ereditato da RegistrationAttribute)

Metodi

GetPackageRegKeyPath(Guid)

Ottiene il percorso del Registro di sistema (relativo alla radice del Registro di sistema dell'applicazione) del pacchetto VS.

(Ereditato da RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

Crea tutte le chiavi del Registro di sistema e le voci specificate dal costruttore di classe.

Unregister(RegistrationAttribute+RegistrationContext)

Rimuove tutte le chiavi del Registro di sistema e le voci.

Si applica a