『WPF』保存和还原应用程序窗口的位置和大小

本文最后更新于 2019年 5月 6号 晚上 11点 47分,并同步发布于 :


WPF 开发中, 经常需要让窗口记住它上一次的位置和大小,我们可以通过 配置文件注册表 来实现这一目的。
但是配置文件在保存多个窗口的情况下显得不太方便, 需要在配置文件中为每个窗口创建值。
而使用注册表的方式更为灵活也更方便, 本文使用注册表的方式来实现。


为了灵活的为每个窗口保存位置,可以创建一个辅助类 :
这个辅助类有两个方法( SaveSizeSetSize ), 分别保存和设置一个窗口的位置和大小。

保存窗口位置

先看一下 辅助类的 SaveSize 方法 :

这个方法在注册表的 Software 目录中创建了 MyApp/WindowBounds 子目录
然后在这个目录中保存每个窗口的位置信息

window.RestoreBounds 属性是窗口在 最大化 / 最小化 之前的位置信息,类型为 Rect

还原窗口位置

然后是 SetSize 方法 :


这个方法读取我们之前在注册表中创建的值,并转换为 Rect 类型的值
然后根据这个值,设置窗口的位置和大小。


编写好辅助类之后,只需在窗口加载和关闭的时候,还原或保存位置即可。


---END---

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容