我正在使用MVVM创建一个WPF桌面应用程序。
我使用Behavior
来存储窗口状态行为。我想要一些对话框来存储应用程序会话之间的设置。但是我希望在应用程序会话的最后一个打开的位置显示一些对话框,但是当应用程序重新启动时,diloag必须成为中心所有者。
我可以在WindowStateSettings
类中有一个标志来存储它是一个临时设置,并在应用程序退出时刷新。但是我怎么能删除特定的用户设置。或者有任何设置持续应用程序会话。我无法使用static
类来存储数据,因为此行为类不会在两个对话框之间共享数据。
答案 0 :(得分:0)
如果要在.NET中使用内置设置机制,可以在应用程序运行时更改所需的设置,然后再调用Save()将设置保留到磁盘。
使您的默认位置不可能,例如(-1,-1)。
然后,在显示表单时,请检查该表单的当前设置。如果值为(-1,-1)则显示中心。否则,在存储的坐标处显示它。
只要您在更改设置后没有调用Save(),它就会在下次启动应用程序时返回(-1,-1)。
然后,您还可以灵活地允许用户保存其布局,以便下次在相同位置打开窗口。只需在设置上调用Save()即可实现这一目标。