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 для каждого типа элемента, как форма модуль и класс.

Возвращаемое значение

Int32

Если метод завершается успешно, возвращает значение 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 метод для добавления выбранного файла или шаблона или мастера в проект.

Применяется к