Partager via


IVsSymbolicNavigationNotify Interface

Facilitates redirection of Goto Definition on a code symbol.

Namespace:  Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop.9.0 (in Microsoft.VisualStudio.Shell.Interop.9.0.dll)

Syntax

'Declaration
<GuidAttribute("4DE38661-BB8F-4B9B-8D2F-425949341BBE")> _
<InterfaceTypeAttribute()> _
Public Interface IVsSymbolicNavigationNotify
[GuidAttribute("4DE38661-BB8F-4B9B-8D2F-425949341BBE")]
[InterfaceTypeAttribute()]
public interface IVsSymbolicNavigationNotify
[GuidAttribute(L"4DE38661-BB8F-4B9B-8D2F-425949341BBE")]
[InterfaceTypeAttribute()]
public interface class IVsSymbolicNavigationNotify
[<GuidAttribute("4DE38661-BB8F-4B9B-8D2F-425949341BBE")>]
[<InterfaceTypeAttribute()>]
type IVsSymbolicNavigationNotify =  interface end
public interface IVsSymbolicNavigationNotify

The IVsSymbolicNavigationNotify type exposes the following members.

Methods

  Name Description
Public method OnBeforeNavigateToSymbol Determines if there is an alternate source file to navigate to for a code symbol.
Public method QueryNavigateToSymbol Returns the alternate navigation target for the symbol if there is one.

Top

Remarks

Implemented by an advanced code generator system that wants to re-direct the result of Goto Definition on a code symbol. Instead of going to the definition of the symbol in the generated code file, an implementor of this interface can cause the navigation to the definition of the equivalent element in the source file used to generate the code file (e.g. an XAML file).

It is expected that IVsSymbolicNavigationNotify implementations should quickly be able to recognize code files they care about by checking if the input CodeFile matches the naming conventions of the generated files they produce. This might be something like file ends in ".g.vb". It is important that this operation be fast because every "Goto Definition" operation will be passed to these implementations.

Implementors of this interface should register a pointer to their implementation with the IVsSymbolicNavigationManager service.

See Also

Reference

Microsoft.VisualStudio.Shell.Interop Namespace