Поделиться через


Участие в диалоговом окне "Добавление нового элемента"

Подтип проекта может предоставить полный новый каталог элементов для диалогового окна "Добавить новый элемент", зарегистрируя шаблоны добавления элементов в подразделе реестра проектов.

Регистрация создания шаблонов элементов

Этот раздел находится в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\8.0\Projects в реестре. В записях реестра ниже предполагается, что проект Visual Studio, агрегированный подтипом гипотетического проекта. Ниже перечислены записи для проекта Visual Studio.

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\8.0\Projects\{F184B08F-C81C-45F6-A57F-5ABD9991F28F}]
@="#2143"
"DefaultProjectExtension"="vbproj"
"PossibleProjectExtensions"="vbproj;vbp"
"ProjectTemplatesDir"="visualStudioInstallPath\\Vb\\.\\VBProjects"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\8.0\Projects\{F184B08F-C81C-45F6-A57F-5ABD9991F28F}\AddItemTemplates\TemplateDirs\{12345678-1234-1234-1122334455667788}\/1]
@="#100"
"TemplatesDir"="projectSubTypeTemplatesDir\\VBProjectItems"

Подраздел AddItemTemplates\TemplateDirs содержит записи реестра с путем к каталогу, в котором элементы, доступные в диалоговом окне "Добавление нового элемента ", помещаются.

Среда автоматически загружает все данные AddItemTemplates в подразделе реестра проектов . Эти данные могут включать данные для реализации базового проекта, а также данные для определенных типов подтипов проекта. Каждый подтип проекта определяется идентификатором GUID типа проекта. Подтип проекта может указать, что альтернативный набор шаблонов "Добавить элемент" должен использоваться для конкретного экземпляра проекта, поддерживая VSHPROPID_ AddItemTemplatesGuid перечисление из __VSHPROPID2GetProperty реализации, чтобы вернуть значение GUID подтипа проекта. VSHPROPID_AddItemTemplatesGuid Если свойство не указано, используется guid базового проекта.

Элементы в диалоговом окне "Добавление нового элемента" можно фильтровать, реализуя IVsFilterAddProjectItemDlg интерфейс в объекте агрегатора подтипа проекта. Например, подтип проекта, реализующий проект базы данных путем агрегирования проекта Visual Studio, может фильтровать определенные элементы Visual Studio из диалогового окна "Добавление нового элемента ", реализуя фильтрацию, и, в свою очередь, может добавлять элементы, относящиеся к проекту, поддерживая VSHPROPID_ AddItemTemplatesGuid его GetProperty. Дополнительные сведения о фильтрации и добавлении элементов в диалоговое окно "Добавление нового элемента " см . в разделе "Добавление элементов" в диалоговом окне "Добавление нового элемента".