ProvideProfileAttribute(Type, String, String, Int16, Int16, Boolean) Oluşturucu

Tanım

ProvideProfileAttribute 'un yeni bir örneğini başlatır.

public:
 ProvideProfileAttribute(Type ^ objectType, System::String ^ categoryName, System::String ^ objectName, short categoryResourceID, short objectNameResourceID, bool isToolsOptionPage);
public:
 ProvideProfileAttribute(Platform::Type ^ objectType, Platform::String ^ categoryName, Platform::String ^ objectName, short categoryResourceID, short objectNameResourceID, bool isToolsOptionPage);
public ProvideProfileAttribute (Type objectType, string categoryName, string objectName, short categoryResourceID, short objectNameResourceID, bool isToolsOptionPage);
new Microsoft.VisualStudio.Shell.ProvideProfileAttribute : Type * string * string * int16 * int16 * bool -> Microsoft.VisualStudio.Shell.ProvideProfileAttribute
Public Sub New (objectType As Type, categoryName As String, objectName As String, categoryResourceID As Short, objectNameResourceID As Short, isToolsOptionPage As Boolean)

Parametreler

objectType
Type

TypeVisual Studio ayarlarını uygulayan sınıfın.

categoryName
String

Visual Studio ayarları kategorisinin kurallı, yerelleştirilmemiş adı.

objectName
String

Visual Studio ayarlar kategorisini uygulayan nesneyi tanımlamak için kullanılan kurallı, yerelleştirilmemiş ad.

categoryResourceID
Int16

Bir Visual Studio ayarları kategorisinin adının yerelleştirilmiş kaynak KIMLIĞI.

objectNameResourceID
Int16

Bir Visual Studio ayarları kategorisini uygulayan nesneyi tanımlamak için kullanılan adın yerelleştirilmiş kaynak KIMLIĞI.

isToolsOptionPage
Boolean

Bu bağımsız değişken uygulanmadı.

Örnekler

Aşağıdaki örnekte Visual Studio , bir tane ( DesignerOptionsPage ), Araçlar Seçenekler sayfası desteği sağlayan, ayarları sağlayan iki sınıfın kaydı gösterilmektedir. Paket ve kategori GUID 'Leri, yansıma tarafından öznitelik tarafından alınır.

"DesignerOptions Page" adlı sayfanın özel ayarlar noktası şunlardır:

MyDesigner_OptionPage

MyDesigner_OptionPage \ @ = #1003

MyDesigner_OptionPage \Package = {"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"}

MyDesigner_OptionPage \Category = {"YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY"}

MyDesigner_OptionPage \AlternateParent = MyDesigner

Not

Yukarıdaki son giriş (UserSettings \ MyDesigner_OptionPage \AlternateParent) olduğu için vardır isToolsOptionPage true .

"PersistCurrentDesign" adlı sayfanın özel ayarlar noktası şunlardır:

MyDesigner_ Currentdesign

Currentdesign \ @ = #1005 MyDesigner_ >

MyDesigner_ Currentdesign\ Package = {"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"}

MyDesigner_ Currentdesign\ Category = {"zzzzzzzz-ZZZZ-ZZZZ-zzzz-zzzzzzzzzzzz"}>

Not

Olduğundan (MyDesigner_ ObjectName> \Alternateparent) yok isToolsOptionPage false .

Aşağıdaki örnek kod, DesignerOptions sayfasının kullanılarak nasıl kaydedildiğini göstermektedir 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  

Açıklamalar

ProvideProfileAttributeOluşturucu, objectType özel bir ayar noktasının ayarlar kategorisini benzersiz şekilde tanımlamak için ÖĞESINDEN alınan GUID 'yi kullanır Visual Studio .

isToolsOptionPageİse, true ProvideOptionPageAttribute VSPackage öğesine de uygulanması gerekir.

Özel ayar noktaları, _ formunun kurallı adını içeren bir kayıt defteri girişi içinde oluşturulur <CategoryName> <ObjectName> .

Kayıt defteri anahtarı, sürümü olan HKLM\Software\Microsoft\VisualStudio \ <Version> \UserSettings altında bulunur <Version> Visual Studio . Örneğin, 8,0.

_ Altındaki kayıt defteri <CategoryName> girdisi <ObjectName> şu biçimdedir:

<CategoryName> _ <ObjectName>

<CategoryName> _ <ObjectName>\@=#<ObjectNameResourceID>

<CategoryName> _ <ObjectName> \ Package =<Package>

<CategoryName> _ <ObjectName> \ Kategori =<ObjectTypeGuid>

<CategoryName> _ <ObjectName> \ AlternateParent =<CategoryName >

Not

Yukarıdaki son giriş ( <CategoryName> _ <ObjectName> \ AlternateParent) yalnızca isToolsOptionPage ise oluşturulur true .

Şunlara uygulanır