Partager via


ProvideLanguageEditorOptionPageAttribute Classe

Définition

Fournit une méthode générale pour définir une page d'options d'outils de l'éditeur du service de langage.

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
Héritage
ProvideLanguageEditorOptionPageAttribute
Attributs

Exemples

Cet exemple montre comment cet attribut défini par l’utilisateur est utilisé pour inscrire deux pages de propriétés (« Général » et « Indent ») et un nœud de page de propriétés (« Mise en forme ») qui contient la page de propriétés « Indent ». Notez comment le deuxième paramètre du constructeur spécifie la position dans le Registre par rapport au nœud.

Notes

Visual C# permet une forme abrégée d’un attribut défini par l’utilisateur en supprimant la partie « Attribut » du nom. Ce formulaire abrégé est utilisé dans cet exemple et dans tous les autres exemples de cette 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  
    {  
    }  
}  

Remarques

Ces informations sont stockées dans la clé <de Registre RegistrationRoot>\Languages\Language Services\[language]\EditorToolsOptions, où [language] est le nom de la langue.

Sous ÉditeurToolsOptions se trouve une arborescence de pages et de sous-pages qui peut imbriquer n’importe quel nombre de niveaux. Ces pages correspondent aux pages d’options affichées dans le Visual Studio Tools Options pour les éditeurs (où une arborescence de pages d’options est affichée sous le nom de langue, chaque page contenant les options appropriées).

Chaque clé de cette liste de pages d’options contient un ID de ressource ou une chaîne littérale contenant le nom localisé de la page. C’est ce qui est affiché dans la boîte de dialogue Options des outils. En outre, il contient également un GUID de package et éventuellement un GUID d’une page d’options.

S’il n’existe aucun GUID de page d’options, la clé est considérée comme un nœud dans l’arborescence des options et n’a aucune page associée. Sinon, la clé est une feuille dans l’arborescence et sa page d’options s’affiche.

Il peut y avoir plusieurs instances de cet attribut, et chaque instance spécifie un nœud ou une page de propriétés. Les attributs peuvent apparaître dans n’importe quel ordre. Si le GUID de la page de propriétés est spécifié, une page de propriétés est inscrite ; sinon, il s’agit d’un nœud qui est inscrit.

Les attributs définis par l’utilisateur suivants sont utilisés pour les services linguistiques :

Attribut Description
ProvideLanguageServiceAttribute Inscrit le service de langage auprès de Visual Studio et spécifie les fonctionnalités prises en charge.
ProvideLanguageExtensionAttribute Associe une extension de fichier au service de langage.
ProvideLanguageEditorOptionPageAttribute Spécifie un nœud de propriété ou une page pour la boîte de dialogue Options spécifique au service de langage.
ProvideLanguageCodeExpansionAttribute Spécifie les informations d’emplacement pour prendre en charge les extraits de code dans le service de langage.
ProvideServiceAttribute Inscrit un service de langage en tant que service Visual Studio. Tous les services fournis dans le code managé utilisent cet attribut.

Notes pour les héritiers

Cette classe d’attribut ne peut pas être héritée, il n’y a donc rien à implémenter.

Notes pour les appelants

Cette classe d’attribut est généralement appliquée à votre classe VSPackage principale, bien qu’elle puisse apparaître sur n’importe quelle classe. Cette classe d’attribut peut apparaître plusieurs fois et dans n’importe quel ordre, une fois pour chaque page de propriétés et nœud dans l’arborescence de la page de propriétés.

Constructeurs

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

Instancie une nouvelle instance de ProvideLanguageEditorOptionPageAttribute.

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

Instancie une nouvelle instance de ProvideLanguageEditorOptionPageAttribute.

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

Instancie une nouvelle instance de ProvideLanguageEditorOptionPageAttribute.

Propriétés

IsInUnifiedSettings

Obtient ou définit une valeur indiquant si les paramètres de cette page ont été intégrés aux paramètres unifiés lors de la création d’une inscription. Si la valeur est true, la page est masquée lorsque les paramètres unifiés sont activés, de sorte que ses paramètres ne sont pas dupliqués.

Keywords

Obtient les mots clés.

LanguageName

Obtient le nom du langage.

PageGuid

Obtient le GUID de la page d'option.

PageNameResourceId

Obtient l'ID de ressource de nom de la page.

(Hérité de ProvideOptionDialogPageAttribute)
PageType

Obtient le type de la page.

(Hérité de ProvideOptionDialogPageAttribute)
TypeId

Remplacez la propriété TypeID pour permettre aux classes dérivées RegistrationAttribute de fonctionner avec System.ComponentModel.TypeDescriptor.GetAttributes(...). Un attribut dérivé de celui-ci ne doit remplacer cette propriété que s’il a besoin d’un meilleur contrôle sur les instances qui peuvent être appliquées à une classe.

(Hérité de RegistrationAttribute)

Méthodes

GetPackageRegKeyPath(Guid)

Obtient le chemin d'accès au Registre (relatif à la racine de Registre de l'application) du VSPackage.

(Hérité de RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

Crée toutes les entrées et clés de Registre comme spécifié par le constructeur de classe.

Unregister(RegistrationAttribute+RegistrationContext)

Supprime toutes les clés et entrées de Registre.

S’applique à