ProvideProfileAttribute, constructeur
Initialise une nouvelle instance d'ProvideProfileAttribute.
Espace de noms : Microsoft.VisualStudio.Shell
Assembly : Microsoft.VisualStudio.Shell.11.0 (dans Microsoft.VisualStudio.Shell.11.0.dll)
Syntaxe
'Déclaration
Public Sub New ( _
objectType As Type, _
categoryName As String, _
objectName As String, _
categoryResourceID As Short, _
objectNameResourceID As Short, _
isToolsOptionPage As Boolean _
)
public ProvideProfileAttribute(
Type objectType,
string categoryName,
string objectName,
short categoryResourceID,
short objectNameResourceID,
bool isToolsOptionPage
)
Paramètres
- objectType
Type : System.Type
Type de la classe implémentant la prise en charge de paramètres de Visual Studio.
- categoryName
Type : System.String
Le nom canonique et non localisée d'une catégorie de paramètres de Visual Studio.
- objectName
Type : System.String
Le nom canonique et non localisée utilisé pour identifier l'objet implémentant une catégorie de paramètres de Visual Studio.
- categoryResourceID
Type : System.Int16
L'ID de ressource localisé du nom d'une catégorie de paramètres de Visual Studio.
- objectNameResourceID
Type : System.Int16
L'ID de ressource localisé du nom utilisé pour identifier l'objet implémentant une catégorie de paramètres de Visual Studio.
- isToolsOptionPage
Type : System.Boolean
Cet argument n'est pas implémenté.
Remarques
Le constructeur d'ProvideProfileAttribute utilise GUID obtenu à partir de objectType pour identifier uniquement une catégorie de paramètres de Visual Studio de point de paramètres personnalisés.
Si isToolsOptionPage est true, ProvideOptionPageAttribute doit également être appliqué au VSPackage.
Des points de paramètres personnalisés sont créés dans une entrée du Registre contenant le nom canonique de formulaire <CategoryName>_<ObjectName>.
La clé de Registre est recherchée sous HKLM\logiciel\Microsoft\VisualStudio\<Version>\UserSettings d'où<Version> est la version de Visual Studio, par exemple 8,0.
L'entrée du Registre sous <CategoryName>_<ObjectName> est du formulaire :
<CategoryName>_<ObjectName>
<CategoryName>_<ObjectName>\@=#<ObjectNameResourceID>
<CategoryName>_<ObjectName>\package=<Package>
<CategoryName>_<ObjectName>\category=<ObjectTypeGuid>
<CategoryName>_<ObjectName>\AlternateParent =<CategoryName>
[!REMARQUE]
La dernière entrée ci-dessus (<CategoryName>_<ObjectName>\AlternateParent) est créée uniquement siisToolsOptionPage esttrue.
Exemples
L'exemple ci-dessous montre l'alignement de deux classes fournissant des paramètres de Visual Studio, l'un d'entre eux (DesignerOptionsPage) fournit la prise en charge de page d'OutilsOptions.Le package et la catégorie GUID sont obtenus par l'attribut par réflexion.
Le point de paramètres personnalisés pour la page nommée « DesignerOptionsPage » sont :
MyDesigner_OptionPage
MyDesigner_OptionPage\@=#1003
MyDesigner_OptionPage\Package= {« } »
MyDesigner_OptionPage\Category= {« YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY »}
=MyDesigner De MyDesigner_OptionPage\AlternateParent
[!REMARQUE]
La dernière entrée ci-dessus, (UserSettings\MyDesigner_OptionPage\AlternateParent) est présente, car isToolsOptionPage est true.
Le point de paramètres personnalisés pour la page nommée « PersistCurrentDesign » sont :
MyDesigner_ CurrentDesign
MyDesigner_ CurrentDesign\@=#1005 >
MyDesigner_ CurrentDesign\Package= {« } »
MyDesigner_ CurrentDesign\Category= {« ZZZZZZZZ-ZZZZ-ZZZZ-ZZZZ-ZZZZZZZZZZZZ »} >
[!REMARQUE]
Il existe aucune (MyDesigner_ ObjectName>\AlternateParent) car isToolsOptionPage est false.
L'exemple de code ci-dessous montre comment DesignerOptionsPage est enregistré à l'aide de ProvideProfileAttribute.
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 PersisteDesignerState: IProfileManager {
//Implementation here
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.
Voir aussi
Référence
ProvideProfileAttribute Classe
Microsoft.VisualStudio.Shell, espace de noms