Partager via


ProvideOptionPageAttribute, classe

Appliquez-vous cet attribut aux objets indépendants pour permettre à des utilisateurs pour configurer les VSPackages via une page personnalisée de Outils Options.

Hiérarchie d'héritage

System.Object
  System.Attribute
    Microsoft.VisualStudio.Shell.RegistrationAttribute
      Microsoft.VisualStudio.Shell.ProvideOptionDialogPageAttribute
        Microsoft.VisualStudio.Shell.ProvideOptionPageAttribute

Espace de noms :  Microsoft.VisualStudio.Shell
Assembly :  Microsoft.VisualStudio.Shell.11.0 (dans Microsoft.VisualStudio.Shell.11.0.dll)

Syntaxe

'Déclaration
<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := True, Inherited := True)> _
Public NotInheritable Class ProvideOptionPageAttribute _
    Inherits ProvideOptionDialogPageAttribute
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true, Inherited = true)]
public sealed class ProvideOptionPageAttribute : ProvideOptionDialogPageAttribute

Le type ProvideOptionPageAttribute expose les membres suivants.

Constructeurs

  Nom Description
Méthode publique ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean) Initialise une nouvelle instance d'ProvideOptionPageAttribute indiquant qu'une classe particulière implémente la prise en charge de configuration utilisateur du VSPackage selon une page de Outils Options.
Méthode publique ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, Int32)
Méthode publique ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, String)
Méthode publique ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, array<String[])

Début

Propriétés

  Nom Description
Propriété publique CategoryName Obtient le nom non localisée canonique de la catégorie de la page de Outils Options.
Propriété publique CategoryResourceID Obtient l'ID de ressource de catégorie pour une page de Outils Options.
Propriété publique Keywords
Propriété publique NoShowAllView Obtient ou définit si des pages de synthèse de Outils Options sont montrées.
Propriété publique PageName Obtient le nom non localisée canonique de la page de Outils Options.
Propriété publique PageNameResourceId Obtient l'ID de ressource de nom de la page. (Hérité de ProvideOptionDialogPageAttribute.)
Propriété publique PageType Obtient le type de la page. (Hérité de ProvideOptionDialogPageAttribute.)
Propriété publique ProfileMigrationType Définit le type de transfert de profil.
Propriété publique ProvidesLocalizedCategoryName
Propriété publique SupportsAutomation Obtient une valeur indiquant si une implémentation de page de Outils Options prend en charge l'automation.
Propriété publique SupportsProfiles Obtient ou définit si une implémentation de page de Outils Options utilise le mécanisme de paramètres de Visual Studio pour persister son état.
Propriété publique TypeId Obtient l'instance actuel d'ProvideOptionPageAttribute. (Substitue RegistrationAttribute.TypeId.)

Début

Méthodes

  Nom Description
Méthode publique Equals Infrastructure. Retourne une valeur indiquant si cette instance équivaut à un objet spécifié. (Hérité de Attribute.)
Méthode protégée Finalize Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode publique GetHashCode Retourne le code de hachage de cette instance. (Hérité de Attribute.)
Méthode protégée GetPackageRegKeyPath Obtient le chemin d'accès au Registre (par rapport à la racine de Registre de l'application) du VSPackage. (Hérité de RegistrationAttribute.)
Méthode publique GetType Obtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publique IsDefaultAttribute En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut pour la classe dérivée. (Hérité de Attribute.)
Méthode publique Match En cas de substitution dans une classe dérivée, retourne une valeur indiquant si cette instance équivaut à un objet spécifié. (Hérité de Attribute.)
Méthode protégée MemberwiseClone Crée une copie superficielle de l'objet Object actuel. (Hérité de Object.)
Méthode publique Register Enregistre la page de Outils Options. (Substitue RegistrationAttribute.Register(RegistrationAttribute.RegistrationContext).)
Méthode publique ToString Retourne une chaîne qui représente l'objet actuel. (Hérité de Object.)
Méthode publique Unregister Supprime la clé de page de Outils Options du Registre. (Substitue RegistrationAttribute.Unregister(RegistrationAttribute.RegistrationContext).)

Début

Implémentations d'interface explicite

  Nom Description
Implémentation d'interface expliciteMéthode privée _Attribute.GetIDsOfNames Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée _Attribute.GetTypeInfo Récupère les informations de type pour un objet, qui peuvent être utilisées pour obtenir les informations de type d'une interface. (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée _Attribute.GetTypeInfoCount Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée _Attribute.Invoke Fournit l'accès aux propriétés et aux méthodes exposées par un objet. (Hérité de Attribute.)

Début

Remarques

Remarques à l'intention des implémenteurs

Appliquez-vous ProvideOptionPageAttribute aux classes implémentant un VSPackage.Cet attribut s'active pour s'enregistrer qu'un objet indépendant spécifique fournit aux utilisateurs du VSPackage l'accès de configuration via une page personnalisée de Outils Options.

Contexte d'attribut

S'applique à

VSPackages permettent la configuration via les pages personnalisées de Outils Options a implémenté via DialogPage managé de l'infrastructure de package ou à l'aide de code de Visual Studio SDK.

Reproductible

Oui

Attributs requis

DefaultRegistryRootAttribute

Attributs valides

Aucun

Remarques pour des appelants

Cet attribut est utilisé uniquement pour l'alignement et n'affecte pas le comportement d'exécution de code.

ProvideOptionPageAttribute enregistre une classe donnée implémentant IProfileManager ou DialogPage comme fourniture d'une prise en charge particulière d'un VSPackage pour persister la partie ou la totalité l'état d'un VSPackage via le mécanisme de paramètres de Visual Studio.Les informations d'état persistées par la classe implémentante est appelée d'une catégorie de paramètres de Visual Studio et son entrée définissante dans le Registre est rencontrée comme un point de paramètres personnalisés.

[!REMARQUE]

Lorsqu'une page personnalisée de Outils Options basée par infrastructure managée de package est chargée, IDE instancie l'objet enregistré par ProvideOptionPageAttribute comme l'implémenter.La prise en charge managée de page de Outils Options d'infrastructure de package doit être implémentée sur son propre objet et pas sur le VSPackage lui-même.

Pour plus d'informations sur créer et appliquer des instances d'ProvideOptionPageAttribute, consultez l'exemple ci-dessous et l'ProvideOptionPageAttribute.

Exemples

Dans l'exemple ci-dessous, une instance d'ProvideOptionPageAttribute est appliquée à une implémentation d'un VSPackage pour enregistrer la classe DesignerOptionsPage, qui est dérivée d'DialogPage, comme fournissant au VSPackage une page de Outils Options.

Des classes dérivées d'DialogPage sont instrumentées d'implémentation par défaut de fonctionnalité de paramètres de Visual Studio, qui peut être substituée.IDE se sert de cette prise en charge de paramètres de Visual Studio si, comme dans l'exemple, ProvideProfileAttribute est appliqué à l'implémentation d'un VSPackage.Pour plus d'informations sur des paramètres de Visual Studio prenez en charge, consultez l'Paramètres utilisateur et options.

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
}

Sécurité des threads

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Voir aussi

Référence

Microsoft.VisualStudio.Shell, espace de noms

Autres ressources

Pages options

Paramètres utilisateur et options

Créer des pages options en utilisant les classes managées du package

Stocker les pages options personnalisées