Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Gets the alternate itemID of the current selection when an alternate UIHierarchy is used.
Namespace: Microsoft.VisualStudio.Shell.Interop
Assembly: Microsoft.VisualStudio.Shell.Interop (in Microsoft.VisualStudio.Shell.Interop.dll)
Syntax
'Declaration
Function GetCurrentSelection ( _
<OutAttribute> ByRef ppHier As IntPtr, _
<OutAttribute> ByRef pitemid As UInteger, _
<OutAttribute> ByRef ppMIS As IVsMultiItemSelect _
) As Integer
int GetCurrentSelection(
out IntPtr ppHier,
out uint pitemid,
out IVsMultiItemSelect ppMIS
)
int GetCurrentSelection(
[OutAttribute] IntPtr% ppHier,
[OutAttribute] unsigned int% pitemid,
[OutAttribute] IVsMultiItemSelect^% ppMIS
)
abstract GetCurrentSelection :
ppHier:IntPtr byref *
pitemid:uint32 byref *
ppMIS:IVsMultiItemSelect byref -> int
function GetCurrentSelection(
ppHier : IntPtr,
pitemid : uint,
ppMIS : IVsMultiItemSelect
) : int
Parameters
- ppHier
Type: System.IntPtr%
[out] Pointer to the IVsHierarchy interface of the current project hierarchy.
- pitemid
Type: System.UInt32%
[out] Pointer to the identifier for the current project item. If pitemid is set to VSITEMID_SELECTION, the current selection involves multiple items. These items can be accessed using the IVsMultiItemSelect interface pointed to by ppMIS.
- ppMIS
Type: Microsoft.VisualStudio.Shell.Interop.IVsMultiItemSelect%
[out] Pointer to the IVsMultiItemSelect interface to be used to access a multiple selection.
Return Value
Type: System.Int32
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
COM Signature
From vsshell.idl:
HRESULT IVsUIHierarchyWindow::GetCurrentSelection(
[out] IVsHierarchy ** ppHier,
[out] VSITEMID * pitemid,
[out] IVsMultiItemSelect ** ppMIS
);
When there are no alternate UI hierarchy itemIDs, it is more common to use GetCurrentSelection to get the global currently active hierarchy itemID.
IVsUIHierarchyWindow::GetCurrentSelection is used when the selection within the local UI window has a different hierarchy itemID from the global hierarchy itemID. A UI window pushes a different hierarchy itemID to the global level if grfUIHWF is specified as UIHWF_PropagateAltHierarchyItem in Init.
The Macro Explorer and the Server Explorer are examples of tool windows that use a local UI window hierarchy itemID. In the Macro Explorer and Server Explorer, the IVsTrackSelectionEx implementation specifies the value HIERARCHY_DONTPROPAGATE (defined in vsshell.idl) so the locally selected UI hierarchy itemID does not get propagated to the global level. If HIERARCHY_DONTPROPAGATE is not selected, the local hierarchy itemID can be pushed to the global level.
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.