下次启动时WPF恢复可见状态

本文关键字:状态 恢复 WPF 启动 下次 | 更新日期: 2023-09-27 18:13:04

我正在尝试将我的旧windows窗体代码转换为wpf。我的每个窗口都存储了可见性状态、大小和位置,并在下次运行应用程序时恢复这些状态。我连接到FormCloseQuery事件,在那里可以获得有关closeseason的信息。这在WPF中是不可能的。

我可以在WPF表单的关闭事件中存储位置和大小,但不可能存储可见性状态。

有一个答案是如何做到这一点吗?

谢谢马丁

下次启动时WPF恢复可见状态

我可以在WPF表单的关闭事件中存储位置和大小,但不可能存储可见性状态。

胡说!Window.Visibility的性质有什么问题?:

private void MainWindow_Closing(object sender, CancelEventArgs e)
{
    // this.Visibility is the current visibility state of the Window
}

此外,对于您的信息,处理Window.Deactivated事件以在每次应用程序失去焦点时更新值,或者处理Window.Closed事件以在关闭时更新值,这是一个更好的主意。Closing事件是专门用于取消关闭请求的。

此外,在WPF中也习惯存储bool值,然后使用BooleanToVisibilityConverter类将它们数据绑定到Window.Visibility属性。