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