Пошаговое руководство: Создание категории параметров
В этом пошаговом руководстве, можно создать a Visual Studio категория параметров и использует его для сохранения значений и извлечения значений из файла параметров. Категория группы в составе связанные свойства, которые появляются как "точка" параметры". иными словами, например флажка в мастере параметров импорта и экспорта. Запуск мастера, на Сервис меню выберите команду Параметры импорта и экспортов. Параметры сохраняются или получены как категория и отдельные параметры не отображаются в мастере. Дополнительные сведения см. в разделе Настройка параметров разработки в Visual Studio.
Управляемые границы пакетов (MPF) поддерживают создание категорий параметров с очень маленьким дополнительным кодом. Создании VSPackage, чтобы обеспечить контейнер для категории, subclassing Package класс. Можно создать путем наследования из сама категория DialogPage класс.
Примечание
Как DialogPage может предоставлять сетку свойства или настраиваемого пользовательского интерфейса (пользовательский интерфейс), ни то используется диспетчером параметров.
Чтобы запустить это пошаговое руководство, необходимо сначала выполнить первый раздел Пошаговое руководство: Создание страницы параметров. Результирующая сетка свойств параметров позволяет просматривать и изменять свойства в категории. После сохранения категории свойства в файле параметров, просмотре файла, чтобы увидеть, как значения свойств хранятся.
Обязательные компоненты
Чтобы выполнить это пошаговое руководство, необходимо устанавливать SDK для Visual Studio 2010.
Примечание
Дополнительные сведения о пакете SDK для Visual Studio см. в разделе интеграция SDK Visual Studio.Чтобы узнать, как загрузить пакет SDK для Visual Studio см. в разделе Центр разработчиков расширяемости Visual Studio на веб-сайте MSDN.
Расположения для шаблона проекта пакета Visual Studio
Шаблон проекта пакета Visual Studio могут находиться в разных местах в 3 Создать проект диалоговое окно:
Под моделью расширяемости Visual Basic. Язык по умолчанию для проекта Visual Basic.
Под расширяемостью c#. Язык по умолчанию для проекта c#.
Под другой моделью расширяемости типов проектов. Язык по умолчанию для проекта C++.
Создание категория параметров
В этом разделе создается категория параметров с помощью Visual Studio шаблон проекта пакета. Используется пользовательской точки параметров для сохранения и извлечения значений категорий параметров.
Создание категория параметров
Выполните первый раздел Пошаговое руководство: Создание страницы параметров.
Щелкните правой кнопкой мыши узел проекта и выберите команду MyToolsOptions Назначить запускаемым проектом.
Откройте файл VSPackage.resx и добавьте эти ресурсы 3 строк.
Имя
Значение
106
Локальная категория
107
Мои параметры
108
OptionInteger и OptionFloat
Это создает ресурсы, имя категории "моей по категориям", "мои параметры" и описание OptionInteger OptionFloat "и" категории.
Примечание
Эти 3, но имя категории параметров не отображается в мастере импорта и экспорта.
Откройте файл MyToolsOptionsPackage.cs или MyToolsOptionsPackage.vb в проекте MyToolsOptions и add a float именованное свойство OptionFloat к OptionPageGrid класс, как показано в следующем примере.
Public Class OptionPageGrid Inherits DialogPage Private _optionInt As Integer = 256 Private _optionFloat As Single = 3.14F <Category("My Options")> <Description("My integer option")> Public Property OptionInteger() As Integer Get Return _optionInt End Get Set(ByVal value As Integer) _optionInt = value End Set End Property <Category("My Options")> <Description("My float option")> Public Property OptionFloat() As Single Get Return _optionFloat End Get Set(ByVal value As Single) _optionFloat = value End Set End Property End Class
public class OptionPageGrid : DialogPage { private int _optionInt = 256; private float _optionFloat = 3.14F; [Category("My Options")] [Description("My integer option")] public int OptionInteger { get { return _optionInt; } set { _optionInt = value; } } [Category("My Options")] [Description("My float option")] public float OptionFloat { get { return _optionFloat; } set { _optionFloat = value; } } }
Примечание
OptionPageGrid категория с именем "по категориям" моей теперь состоит из 2 свойств OptionInteger и OptionFloat.
Add a ProvideProfileAttribute к MyToolsOptions класс и присваивает ему CategoryName категория "my", присваивает ему ObjectName "мои параметры" и укажите в IsToolsOptionPage true. Установите categoryResourceID, objectNameResourceID и DescriptionResourceID в соответствующие идентификаторы ресурсов строки, созданные ранее.
<ProvideProfileAttribute(GetType(OptionPageGrid), "My Category", "My Settings", 106, 107, True, DescriptionResourceID:=108)> <Guid(GuidList.guidMyToolsOptionsPkgString)> Public NotInheritable Class MyToolsOptions Inherits Package
[ProvideProfileAttribute( typeof(OptionPageGrid), "My Category", "My Settings", 106, 107, true, DescriptionResourceID = 108)] [Guid(GuidList.guidMyToolsOptionsPkgString)] public sealed class MyToolsOptions : Package
Выполните построение проекта и убедитесь в том, что он будет компилироваться без ошибок.
Просмотр реестру системы
В этом разделе рассматривается, как просмотреть записи системного реестра made by ProvideProfileAttribute.
Просмотреть реестру системы
Запустите проект в режиме отладки, нажав клавишу F5.
Это запуске Visual Studio Exp и записи аргументы ProvideProfileAttribute в системный реестр.
Примечание
Версии 2 Visual Studio открыть.
Закройте экземпляр отладки Visual Studio.
Запустите редактор реестра и просмотрите записи реестра для HKCU \ software \ microsoft \ VisualStudio \ 10.0Exp_Config \ UserSettings \ MyCategory_MySettings. В следующей таблице перечислены подразделы записи (свои GUID будут отличаться).
Имя
Данные
(Значение по умолчанию)
#107
Категория
{ba1e23e3-fecc-425d-8259-06c40cfac1b6}
Описание
#108
Пакет
{a2192704-7d66-44b7-b61b-44ed96aace98}
По умолчанию используется значение "#107" подраздела ссылается на ресурс строки "мои параметры". Значение "#108" подраздела " описание " относится к ресурсу "OptionInteger и OptionFloat" строки.
Исправление реестру системы
В этом разделе вы исправляете записи системного реестра made by ProvideProfileAttribute.
ProvideProfileAttribute проектирования для написания идентификаторов ресурсов для неуправляемых ресурсов в системный реестр. Visual Studio загрузчик ресурсов предполагает отдельных идентификаторов ресурсов, чтобы иметь числовые значения предшествуемые "#" и управляемые ресурсы иметь числовые значения, не предшествовать "#". Поэтому необходимо удалить "#" для управляемых идентификаторов ресурсов.
Исправить реестру системы
Исправьте запись реестра HKLM \ software \ microsoft \ VisualStudio \ 8.0Exp \ UserSettings \ MyCategory_MySettings путем удаления "#" из его производных числовых подразделов. В следующей таблице перечислены подразделы записи (свои GUID будут отличаться).
Имя
Данные
(Значение по умолчанию)
107
Категория
{ba1e23e3-fecc-425d-8259-06c40cfac1b6}
Описание
108
Пакет
{a2192704-7d66-44b7-b61b-44ed96aace98}
ToolsOptionsPath
Локальная категория
Щелкните правой кнопкой мыши запись реестра, а также экспортируют их в файл "settings.reg" в папке проекта MyToolsOptions.
Закройте Редактор реестра .
Щелкните правой кнопкой мыши узел проекта MyToolsOptions и добавить "settings.reg" в проект.
Откройте VsPkg.cs или VsPkg.vb и закомментируйте ProvideProfileAttribute и ее аргументы.
'<ProvideProfileAttribute(GetType(OptionPageGrid), "My Category", "My Settings", 106, 107, True, DescriptionResourceID := 108)>
//[ProvideProfileAttribute( // typeof(OptionPageGrid), "My Category", "My Settings", // 106, 107, true, DescriptionResourceID = 108)]
Это предотвращает неверные записи реестра от перезаписи в системный реестр.
Щелкните правой кнопкой мыши проект и выберите пункт MyToolsOptions Свойства.
Щелкните События построения вкладка и добавляет следующие действия Командная строка события после построения. Вы должны включать полный путь файла settings.reg (путь может отличаться).
regedit /s D:\MyToolsOptions\MyToolsOptions\settings.reg
Постройте решение MyToolsOptions. Исправлены числовые подразделов записи в реестр.
Примечание
Необходимо также делать эти исправления при создании файла реестра для итогового развертывания VSPackage.
Просмотр файл параметров
В этом разделе будет экспортировать значения категории свойства в файле параметров. Просмотре файл, а затем импортировать значения обратно в категорию свойства.
Изучить файл параметров
Запустите проект в режиме отладки, нажав клавишу F5. Это запуске Visual Studio Exp.
Примечание
Версии 2 Visual Studio открыть.
IN Visual Studio Exp, на Сервис меню выберите команду Параметры.
Откроется диалоговое окно Параметры.
В представлении в виде дерева в левой панели разверните раздел Локальная категория затем перейдите моя страница сетки.
Сетка параметров появится в правой области. Категория свойств мои параметрыи имена свойств OptionFloat и OptionInteger.
Измените значение OptionFloat до 3,1416 и OptionInteger до 12. Нажмите кнопку ОК.
В меню Сервис выберите команду Импорт и экспорт параметров.
Импорт и экспорт параметров мастер.
Убедитесь Экспортировать выбранные параметры среды выделяет и нажмите кнопку Далее.
Выбор параметров для экспорта страница отображается.
Нажать Мои параметры.
Описание изменения OptionInteger и OptionFloat.
Убедитесь, что Мои параметры выделяет и нажмите кнопку Далее.
Задание имени файла параметров страница отображается.
Назовите новый файл параметров MySettings.vssettings и сохраните его в соответствующем каталоге. Нажмите кнопку Готово.
Экспорт завершен отчеты страницы, что параметры были успешно экспортированы.
В меню Файл выберите команду Открыть и щелкните Файл. Найдите MySettings.vssettings и откройте его.
Можно найти категорию свойства экспортированный в следующем разделе файла (свои GUID будут отличаться).
<Category name="My Category_My Settings" Category="{4802bc3e-3d9d-4591-8201-23d1a05216a6}" Package="{6bb6942e-014c-489e-a612-a935680f703d}" RegisteredName="My Category_My Settings"> PackageName="Company.MyToolsOptions.MyToolsOptions, MyToolsOptions, Version=1.0.2251.20398, Culture=neutral, PublicKeyToken=d74639816260e962"> <PropertyValue name="OptionFloat">3.1416</PropertyValue> <PropertyValue name="OptionInteger">12</PropertyValue> </Category>
Обратите внимание, что полное имя категории сформировано сложением подчеркивания имя категории, за которым следует именем объекта. OptionFloat и OptionInteger появляются в категории, вместе с экспортированными значениями.
Закройте файл параметров, не изменяя его.
На Сервис меню выберите команду Параметрыразверните Локальная категориящелкните моя страница сетки затем измените значения OptionFloat и OptionInteger. Нажмите кнопку ОК.
На Сервис меню выберите команду Импорт и экспорт параметроввыберите Импортировать выбранные параметры среды, а затем нажмите кнопку Далее.
Сохранение текущих параметров страница отображается.
Выберите Не просто будет импортировать новые параметры затем перейдите Далее.
Выбор набора параметров для импорта страница отображается.
Выберите файл в MySettings.vssettings Мои параметры узел представления в виде дерева. Если файл не отображается в представлении в виде дерева, щелкните Обзор и найдите его. Нажмите кнопку Далее.
Выбор параметров для импорта появится диалоговое окно.
Убедитесь, что Мои параметры выделяет и нажмите кнопку Готово. После Импорт завершен страница отображается, нажмите кнопку Завершить работу.
На Сервис меню выберите команду Параметрыразверните Локальная категориящелкните my страница сетки и убедитесь в том, что полученные значения категории свойства.
См. также
Основные понятия
Поддержите категорий параметров