ProvideProfileAttribute(Type, String, String, Int16, Int16, Boolean) Конструктор
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Инициализирует новый экземпляр Провидепрофилеаттрибуте.
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)
Параметры
- categoryName
- String
Каноническое, нелокализованное имя категории параметров Visual Studio.
- objectName
- String
Каноническое нелокализованное имя, используемое для определения объекта, реализующего категорию параметров Visual Studio.
- categoryResourceID
- Int16
Локализованный идентификатор ресурса для имени категории параметров Visual Studio.
- objectNameResourceID
- Int16
Локализованный идентификатор ресурса имени, используемого для идентификации объекта, реализующего категорию параметров Visual Studio.
- isToolsOptionPage
- Boolean
Этот аргумент не реализован.
Примеры
В приведенном ниже примере показана регистрация двух классов Visual Studio , предоставляющих параметры, один из которых ( DesignerOptionsPage ) предоставляет поддержку страницы параметров инструментов . Идентификаторы GUID пакета и категории получаются атрибутом отражением.
Точка настраиваемых параметров для страницы с именем "Десигнероптионспаже":
MyDesigner_OptionPage
MyDesigner_OptionPage \ @ = #1003
MyDesigner_OptionPage \package = {"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"}
MyDesigner_OptionPage \Категори = {"ИИИИИИИИ-гггг-гггг-гггг-ИИИИИИИИИИИИ"}
MyDesigner_OptionPage \Алтернатепарент = Мидесигнер
Примечание
Последняя запись выше, (UserSettings \ MyDesigner_OptionPage \Алтернатепарент), имеется, так как isToolsOptionPage имеет значение true .
Точка настраиваемых параметров для страницы с именем "Персисткуррентдесигн":
MyDesigner_ куррентдесигн
MyDesigner_ куррентдесигн \ @ = #1005 >
MyDesigner_ куррентдесигн\package = {"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"}
MyDesigner_ куррентдесигн\категори = {"ЗЗЗЗЗЗЗЗ-ZZZZ-ZZZZ-ZZZZ-зззззззззззз"}>
Примечание
Отсутствует (MyDesigner_ ObjectName> \алтернатепарент), так как isToolsOptionPage имеет false .
В примере кода ниже показано, как Десигнероптионспаже регистрируется с помощью 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
Комментарии
ProvideProfileAttributeКонструктор использует идентификатор GUID, полученный из objectType , для уникальной идентификации категории параметров пользовательской точки параметров Visual Studio .
Если isToolsOptionPage параметр имеет значение true , то ProvideOptionPageAttribute необходимо также применить к пакету VSPackage.
Пользовательские точки параметров создаются в записи реестра, содержащей каноническое имя формы <CategoryName> _ <ObjectName> .
Раздел реестра находится в папке Хклм\софтваре\микрософт\висуалстудио \ <Version> \усерсеттингс, где <Version> — это версия Visual Studio , например 8,0.
Запись реестра в параметре <CategoryName> _ <ObjectName> имеет вид:
<CategoryName> _ <ObjectName>
<CategoryName> _ <ObjectName>\@=#<ObjectNameResourceID>
<CategoryName> _ <ObjectName> \Package =<Package>
<CategoryName> _ <ObjectName> \Категори =<ObjectTypeGuid>
<CategoryName> _ <ObjectName> \Алтернатепарент =<CategoryName >
Примечание
Последняя запись выше ( <CategoryName> _ <ObjectName> \алтернатепарент) создается только в том случае isToolsOptionPage , если имеет значение true .