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

时间:2014-07-15 10:12:34

标签: c# wpf

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

我可以在WPF表单的结束事件中存储位置和大小,但是无法存储可见性状态。

有没有答案如何做到这一点?

由于 马丁

1 个答案:

答案 0 :(得分:1)

  

我可以在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 Class将数据绑定到Window.Visibility属性。