Condividi tramite


IVsObjectList.LocateNavigationInfo Method

Definition

Returns the index of the list item corresponding to the VSOBNAVIGATIONINFO2 structure.

public:
 int LocateNavigationInfo(cli::array <Microsoft::VisualStudio::Shell::Interop::VSOBNAVIGATIONINFO2> ^ pobNav, cli::array <Microsoft::VisualStudio::Shell::Interop::VSOBNAVNAMEINFONODE> ^ pobName, int fDontUpdate, [Runtime::InteropServices::Out] int % pfMatchedName, cli::array <System::UInt32> ^ pIndex);
int LocateNavigationInfo(std::Array <Microsoft::VisualStudio::Shell::Interop::VSOBNAVIGATIONINFO2> const & pobNav, std::Array <Microsoft::VisualStudio::Shell::Interop::VSOBNAVNAMEINFONODE> const & pobName, int fDontUpdate, [Runtime::InteropServices::Out] int & pfMatchedName, std::Array <unsigned int> const & pIndex);
public int LocateNavigationInfo (Microsoft.VisualStudio.Shell.Interop.VSOBNAVIGATIONINFO2[] pobNav, Microsoft.VisualStudio.Shell.Interop.VSOBNAVNAMEINFONODE[] pobName, int fDontUpdate, out int pfMatchedName, uint[] pIndex);
abstract member LocateNavigationInfo : Microsoft.VisualStudio.Shell.Interop.VSOBNAVIGATIONINFO2[] * Microsoft.VisualStudio.Shell.Interop.VSOBNAVNAMEINFONODE[] * int * int * uint32[] -> int
Public Function LocateNavigationInfo (pobNav As VSOBNAVIGATIONINFO2(), pobName As VSOBNAVNAMEINFONODE(), fDontUpdate As Integer, ByRef pfMatchedName As Integer, pIndex As UInteger()) As Integer

Parameters

pobNav
VSOBNAVIGATIONINFO2[]

[in] Specifies navigation information. Values are in a VSOBNAVIGATIONINFO2 structure.

pobName
VSOBNAVNAMEINFONODE[]

[in] Specifies the name of the node of interest. Values are in a VSOBNAVNAMEINFONODE structure.

fDontUpdate
Int32

[in] Flag indicating do not update.

pfMatchedName
Int32

[out] Pointer to a flag indicating a matched name was found.

pIndex
UInt32[]

[out] Pointer to the index of the located item.

Returns

If the method succeeds, it returns S_OK. If it fails, it returns an error code.

Remarks

COM Signature

From vsshell.idl:

HRESULT IVsObjectList::LocateNavigationInfo(  
   [in] VSOBNAVIGATIONINFO2 *pobNav,  
   [in] VSOBNAVNAMEINFONODE *pobName,  
   [in] BOOL fDontUpdate,  
   [out] BOOL *pfMatchedName,  
   [out] ULONG *pIndex  
);  

When an object has been selected in Object Browser or Class View, and the environment must redraw the view as a result of a sort or expansion, a path back to the selected item must be maintained. The environment will call GetNavigationInfo for the selected object, and each of its parents, ascending the tree until the root node is reached. The environment can then descend the tree, with calls to LocateNavigationInfo to step down through the nodes of the tree list. The VSOBNAVIGATIONINFO2 structure contains the GUID and name of the library. The pobName parameter is a pointer to a VSOBNAVNAMEINFONODE structure containing the name and type of the item of interest. When you find the requested name, set pIndex to the appropriate value for the item, and set pfMatchedName to true. If fDontUpdate is set, and you can't locate the requested item, return E_FAIL. If fDontUpdate is not set and you can't locate the requested item, return pIndex as null, and the environment will regenerate the object list.

Applies to