C#WPF)如何在showdialog()显示子模式窗口之后最小化父窗口



我在stackoverflow上搜索了一些帖子,一些讨论得出结论,因为这是WPF模式窗口的标准行为,所以没有办法做到这一点。

难道真的没有一个从模态子窗口最小化(控制)父窗口的解决方案吗?

有谁入侵过或知道往返吗?

我们将永远高度赞赏你的优秀想法。

谢谢!

您可以通过应用程序窗口集合获得Window的引用。这是最小化主窗口的一个例子,在我的例子中,主窗口是父窗口:

    private void button_Click(object sender, RoutedEventArgs e)
    {
        foreach (Window win in Application.Current.Windows.OfType<MainWindow>())
        {
            var mainWin = ((MainWindow)win);
            mainWin.WindowState = mainWin.WindowState == WindowState.Minimized ? WindowState.Normal : WindowState.Minimized;
        }
    }

您只需将窗口状态设置为最小化即可。

如果你想摆脱窗口,只需使用.Hide();并显示一个.Show();

最新更新