Share via


IVsUIHierarchyWindow2.Init(IVsUIHierarchy, UInt32, Object) Method

Definition

Initializes a custom use of a UI hierarchy window.

public:
 int Init(Microsoft::VisualStudio::Shell::Interop::IVsUIHierarchy ^ pUIH, System::UInt32 grfUIHWF, [Runtime::InteropServices::Out] System::Object ^ % ppunkOut);
int Init(Microsoft::VisualStudio::Shell::Interop::IVsUIHierarchy const & pUIH, unsigned int grfUIHWF, [Runtime::InteropServices::Out] winrt::Windows::Foundation::IInspectable const & & ppunkOut);
public int Init (Microsoft.VisualStudio.Shell.Interop.IVsUIHierarchy pUIH, uint grfUIHWF, out object ppunkOut);
abstract member Init : Microsoft.VisualStudio.Shell.Interop.IVsUIHierarchy * uint32 * obj -> int
Public Function Init (pUIH As IVsUIHierarchy, grfUIHWF As UInteger, ByRef ppunkOut As Object) As Integer

Parameters

pUIH
IVsUIHierarchy

[in] IVsUIHierarchy to initialize.

grfUIHWF
UInt32

[in] Characteristics of the UI hierarchy window. For a list of values, see the __UIHWINFLAGS enumeration.

ppunkOut
Object

[out] Pointer to the IUnknown interface of the IVsWindowFrame2 object containing the UI hierarchy window.

Returns

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

Implements

Remarks

The project window of the environment is a reusable UI element. VSPackages can use an instance of a UI hierarchy window to have a tool window that functions similar to the built-in Project Window. An example use of the UI hierarchy window is the Server Explorer.

A UI hierarchy window is created by passing CLSID_VSUIHIERARCHYWINDOW in a call to the method CreateToolWindow. The IVsUIHierarchyWindow interface can be accessed using the interface IUnknown::QueryInterface of the VSFPROPID_DocView object of the tool window returned by this call.

If you must get to any service accessible to the UI hierarchy window (for example, the SID_SVsTrackSelectionEx service or the SID_SUndoManager service), then you can retrieve the VSFPROPID_SPFrame property from the UI hierarchy window's window frame. This returns the IServiceProvider interface of the window frame.

UI hierarchy windows that have multiple top-level nodes require a way to handle selections that include multiple hierarchies. This is because the common parent hierarchy handles commands, if the selection is across hierarchies. To handle such selections, do one of the following:

Applies to