IVsAddProjectItemDlg2.AddProjectItemDlg(UInt32, Guid, IVsProject, UInt32, String, String, String, String, Int32) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Отображает диалоговое окно Добавление элемента от имени вызывающего проекта.
public:
int AddProjectItemDlg(System::UInt32 itemidLoc, Guid % rguidProject, Microsoft::VisualStudio::Shell::Interop::IVsProject ^ pProject, System::UInt32 grfAddFlags, System::String ^ lpszExpand, System::String ^ lpszSelect, [Runtime::InteropServices::Out] System::String ^ % pbstrLocation, [Runtime::InteropServices::Out] System::String ^ % pbstrFilter, [Runtime::InteropServices::Out] int % pfDontShowAgain);
public int AddProjectItemDlg (uint itemidLoc, ref Guid rguidProject, Microsoft.VisualStudio.Shell.Interop.IVsProject pProject, uint grfAddFlags, string lpszExpand, string lpszSelect, out string pbstrLocation, out string pbstrFilter, out int pfDontShowAgain);
abstract member AddProjectItemDlg : uint32 * Guid * Microsoft.VisualStudio.Shell.Interop.IVsProject * uint32 * string * string * string * string * int -> int
Public Function AddProjectItemDlg (itemidLoc As UInteger, ByRef rguidProject As Guid, pProject As IVsProject, grfAddFlags As UInteger, lpszExpand As String, lpszSelect As String, ByRef pbstrLocation As String, ByRef pbstrFilter As String, ByRef pfDontShowAgain As Integer) As Integer
Параметры
- itemidLoc
- UInt32
[in] Идентификатор элемента папки проекта, куда должны быть добавлены элементы. Это полезно только для проектов на основе каталогов. Проекты, не основанные на каталогах, передают VSITEMID_ROOT. Диалоговое окно Добавление элемента не использует параметр, за исключением передачи его обратно в AddItemWithSpecific(UInt32, VSADDITEMOPERATION, String, UInt32, String[], IntPtr, UInt32, Guid, String, Guid, VSADDRESULT[]) метод.
- rguidProject
- Guid
[in] Идентификатор для типа проекта. Зарегистрируйте этот параметр в подключе "Проекты" раздела реестра Microsoft Visual Studio. Диалоговое окно использует следующие сведения в этом разделе: значение Итемтемплатедир, которое содержит путь к каталогу, содержащему шаблоны элементов для этого типа проекта. Ключ Filters, который используется для создания открытых фильтров для существующей вкладки. Элементы и фильтры, относящиеся к этому типу проекта, которые отображаются в диалоговом окне.
- pProject
- IVsProject
[in] Указатель на конкретный интерфейс IVsProject, с помощью которого диалоговое окно формирует имена по умолчанию для каждого элемента, вызывая метод GenerateUniqueItemName(UInt32, String, String, String) интерфейса, и добавляет элементы в проект, вызывая метод AddItem(UInt32, VSADDITEMOPERATION, String, UInt32, String[], IntPtr, VSADDRESULT[]).
- grfAddFlags
- UInt32
[in] Значения флага, полученные из перечисления __VSADDITEMFLAGS, которые изменяют поведение диалогового окна.
- lpszExpand
- String
[in] Вложенная папка в каталоге шаблонов элемента, которую необходимо выбрать и развернуть, если в ней имеются собственные вложенные папки. Этот параметр просто инициализирует состояние дерева и не влияет на то, чем является каталог шаблонов элементов.
- lpszSelect
- String
окне Элемент внутри pszExpand папки, который будет выбран. Проект использует этот параметр, чтобы реализовать поведение залипания для выбранного элемента. Этот параметр переопределяет поведение по умолчанию для диалогового окна, которое должно выбрать первый элемент в папке.
- pbstrLocation
- String
[in, out] Указатель на поле расположения (начальное или конечное значение). Этот параметр используется, только если задается VSADDITEM_ShowLocationField. Чтобы задать поведение залипания для поля местоположения, что рекомендуется, запомните последнее значение поля расположения и передайте его обратно при повторном открытии диалогового окна.
- pbstrFilter
- String
[вход, выход] Инициализирует и Возвращает конечное значение строки фильтра (на существующей вкладке). Укажите VSADDITEM_AllowStickyFilter для возврата значения для строки фильтра. Чтобы задать поведение залипания для поля фильтра, что рекомендуется, запомните последнее значение поля фильтра и передайте его обратно при повторном открытии диалогового окна.
- pfDontShowAgain
- Int32
заполняет Определяет, выбран ли пользователь или снят флажок больше не показывать это диалоговое окно. Этот параметр используется, только если задается VSADDITEM_ShowDontShowAgain. Для реализации параметра, что рекомендуется, вызовите напрямую собственный метод AddItem(UInt32, VSADDITEMOPERATION, String, UInt32, String[], IntPtr, VSADDRESULT[]) последнего выбранного шаблона элемента. Обычно проект имеет отдельный параметр DontShowAgain для каждого типа элемента, как форма модуль и класс.
Возвращаемое значение
Если метод завершается успешно, возвращает значение S_OK. В противном случае функция возвращает код ошибки.
Реализации
Комментарии
Подпись COM
Из всшелл. IDL:
HRESULT IVsAddProjectItemDlg2::AddProjectItemDlg(
[in] VSITEMID itemidLoc,
[in] REFGUID rguidProject,
[in] IVsProject *pProject,
[in] VSADDITEMFLAGS grfAddFlags,
[in] LPCOLESTR lpszExpand,
[in] LPCOLESTR lpszSelect,
[in, out] BSTR *pbstrLocation,
[in, out] BSTR *pbstrFilter,
[out] BOOL *pfDontShowAgain
);
Для использования этого метода вызывающий объект должен реализовать реализацию IVsProject . Диалоговое окно — это только механизм выбора. Вызывающий объект должен выполнять задачи, необходимые для добавления элемента в проект и его открытия в редакторе. Диалоговое окно вызывает AddItem метод для добавления выбранного файла или шаблона или мастера в проект.