IVsUIHierarchyWindow.GetCurrentSelection(IntPtr, UInt32, IVsMultiItemSelect) Метод

Определение

Получает альтернативный itemID текущего выделения, когда используется альтернативная UIHierarchy.

public:
 int GetCurrentSelection([Runtime::InteropServices::Out] IntPtr % ppHier, [Runtime::InteropServices::Out] System::UInt32 % pitemid, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Shell::Interop::IVsMultiItemSelect ^ % ppMIS);
public int GetCurrentSelection (out IntPtr ppHier, out uint pitemid, out Microsoft.VisualStudio.Shell.Interop.IVsMultiItemSelect ppMIS);
abstract member GetCurrentSelection : nativeint * uint32 * IVsMultiItemSelect -> int
Public Function GetCurrentSelection (ByRef ppHier As IntPtr, ByRef pitemid As UInteger, ByRef ppMIS As IVsMultiItemSelect) As Integer

Параметры

ppHier
IntPtr

[out] Указатель на интерфейс IVsHierarchy иерархии текущего проекта.

pitemid
UInt32

[out] Указатель на идентификатор для текущего элемента проекта. Если параметр pitemid имеет значение VSITEMID_SELECTION , текущее выделение включает несколько элементов. Доступ к этим элементам можно получить с помощью IVsMultiItemSelect интерфейса, на который указывает ppMIS .

ppMIS
IVsMultiItemSelect

[out] Указатель на интерфейс IVsMultiItemSelect, который необходимо использовать для доступа к множественному выделению.

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

Int32

Если метод завершается успешно, возвращает значение S_OK. В противном случае функция возвращает код ошибки.

Комментарии

Подпись COM

Из всшелл. IDL:

HRESULT IVsUIHierarchyWindow::GetCurrentSelection(  
   [out] IVsHierarchy ** ppHier,  
   [out] VSITEMID * pitemid,  
   [out] IVsMultiItemSelect ** ppMIS  
);  

Если нет альтернативной иерархии пользовательского интерфейса itemID , то чаще всего используется GetCurrentSelection для получения глобальной активной иерархии itemID .

IVsUIHierarchyWindow::GetCurrentSelection используется, когда выбор в локальном окне пользовательского интерфейса имеет другую иерархию itemID из глобальной иерархии itemID . Окно пользовательского интерфейса помещает на глобальный уровень другую иерархию itemID , если grfUIHWF указывается как UIHWF_PropagateAltHierarchyItem в Init .

Обозреватель макросов и Обозреватель сервера являются примерами окон инструментов, использующих локальную иерархию окон пользовательского интерфейса itemID . В обозревателе макросов и Обозреватель сервера IVsTrackSelectionEx Реализация указывает значение HIERARCHY_DONTPROPAGATE (определенное в всшелл. IDL), чтобы локально Выбранная иерархия пользовательского интерфейса itemID не распространялась на глобальный уровень. Если HIERARCHY_DONTPROPAGATE параметр не выбран, локальная иерархия itemID может быть передана на глобальный уровень.

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