IVsUIHierarchyWindow2.GetCurrentSelection 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
当使用替代的 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 接口用于访问多个选定内容。
返回
如果该方法成功,则它会返回 S_OK。 如果该方法失败,则会返回错误代码。
注解
如果没有备用 UI 层次结构 itemID ,则更常见的方法是使用 GetCurrentSelection 来获取全局当前处于活动状态的层次结构 itemID 。
IVsUIHierarchyWindow::GetCurrentSelection 当本地 UI 窗口中的选定内容 itemID 与全局层次结构具有不同的层次结构时,将使用 itemID 。 itemID如果 grfUIHWF 在中指定为 UIHWF_PROPAGATEALTHIERARCHYITEM,UI 窗口会将不同的层次结构推送到全局级别 Init 。
宏资源管理器和服务器资源管理器是使用本地 UI 窗口层次结构的工具窗口的示例 itemID 。 在宏资源管理器和服务器资源管理器中, IVsTrackSelectionEx 实现指定在 vsshell) 中定义 HIERARCHY_DONTPROPAGATE (值,因此本地选定的 UI 层次结构 itemID 不会传播到全局级别。 如果未选择 HIERARCHY_DONTPROPAGATE,则可以将本地层次结构 itemID 推送到全局级别。