フローティングペインを最小化すると、タスクバー左上にウインドウ操作 UI が表示され、こちらを操作することで画面上に復帰させることができます。

今回は画面復帰をコードで行う方法をご紹介したいと思います。
ContentPane を操作するかと思いきや、今回は ContentPane をフローティングさせる際に、ContentPane をホストする “ToolWindow” を操作します。いかにも操作したくなる名前ですね。
該当の ContentPane(今回はフローティングしている ContentPane のため、PaneLocation: Floating のものが対象です。)をホストしている ToolWindow に対して、Window の状態を司る “WindowState” を変更してあげるだけなのです。とっても簡単ですね。
最小化していると WindowState が Minimized になっていますので、これを Nomal に設定変更することで、画面復帰させることができます。
以下はボタンのクリックイベントで実装したものです。
private void button5_Click(object sender, RoutedEventArgs e)
{
// GetPanes で xamDockManager 内の全ての Pane を取得します。
var allContentPanes = xamDockManager1.GetPanes(PaneNavigationOrder.VisibleOrder);
foreach (ContentPane contentPane in allContentPanes)
{
// foreach で回して、Floating ペインのみに以下の操作をしていきます。
if (XamDockManager.GetPaneLocation(contentPane) == PaneLocation.Floating)
{
// 該当の ContenPane をホストしている ToolWindow を取得します。今回はこちらを操作していきます。
ToolWindow toolWindow = ToolWindow.GetToolWindow(contentPane);
// さらに、最小化されている ContentPane をチェックします。
if (toolWindow.WindowState == WindowState.Minimized)
{
toolWindow.WindowState = WindowState.Normal; 👈 ココで WindowState に Nomal を設定してあげます。
}
}
}
}
ぜひお試しください。
以下は画面復帰の瞬間です。
