IVsUIHierarchyWindow2.GetCurrentSelection 方法

定义

当使用替代的 UIHierarchy 时,获取当前所选内容的备用 itemID。

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

参数

ppHier
IVsHierarchy

弄指向 IVsHierarchy 当前项目层次结构的接口的指针。

pitemid
UInt32

弄指向当前项目项的标识符的指针。 如果 pitemid 设置为 VSITEMID_SELECTION ,则当前所选内容涉及多个项。 可以使用 IVsMultiItemSelect 指向的接口访问这些项 ppMIS

ppMIS
IVsMultiItemSelect

弄指向接口的指针,该 IVsMultiItemSelect 接口用于访问多个选定内容。

返回

Int32

如果该方法成功,则它会返回 S_OK。 如果该方法失败,则会返回错误代码。

注解

如果没有备用 UI 层次结构 itemID ,则更常见的方法是使用 GetCurrentSelection 来获取全局当前处于活动状态的层次结构 itemID

IVsUIHierarchyWindow::GetCurrentSelection 当本地 UI 窗口中的选定内容 itemID 与全局层次结构具有不同的层次结构时,将使用 itemIDitemID如果 grfUIHWF 在中指定为 UIHWF_PROPAGATEALTHIERARCHYITEM,UI 窗口会将不同的层次结构推送到全局级别 Init

宏资源管理器和服务器资源管理器是使用本地 UI 窗口层次结构的工具窗口的示例 itemID 。 在宏资源管理器和服务器资源管理器中, IVsTrackSelectionEx 实现指定在 vsshell) 中定义 HIERARCHY_DONTPROPAGATE (值,因此本地选定的 UI 层次结构 itemID 不会传播到全局级别。 如果未选择 HIERARCHY_DONTPROPAGATE,则可以将本地层次结构 itemID 推送到全局级别。

适用于