/// <summary>
        /// 型階層を表示するウィンドウを開きます。
        /// </summary>
        private async void ShowToolWindowAsync()
        {
            var workspace = GetWorkspace();
            var symbol    = await GetSelectedTypeSymbolAsync(workspace.CurrentSolution);

            var window      = TypeHierarchyWindow.GetWindow(Package);
            var windowFrame = (IVsWindowFrame)window.Frame;

            ErrorHandler.ThrowOnFailure(windowFrame.Show());

            window.ViewModel.InitializeTargetType(symbol, workspace);
        }
 /// <inheritdoc />
 public int OnBeforeCloseSolution(object pUnkReserved)
 {
     TypeHierarchyWindow.GetWindow(_package).ViewModel.Clear();
     return(VSConstants.S_OK);
 }