WPF应用程序如何适应屏幕和字体设置(或者说,我该如何将DLUs转换为WPF中的单位?)

3
在MFC中,对话框使用DLUs设计。在WPF中,我们使用1/96英寸单位来指定。虽然这确实可以缩放窗口和视觉元素,但我们如何使WPF“尊重”用户当前的字体设置?我们应该指定某个字体并坚持使用该字体吗?
如何进行“良好行为的应用程序”布局
  • 调整窗口大小以适应当前的字体设置和分辨率
  • 为小屏幕优雅地重新排列/布局窗口/文本。
任何帮助或指导将不胜感激?(Windows用户体验指南明确说明了应该发生什么,但现在不知道如何在WPF中实现)。

我三年前曾经问过一个类似的问题,但是从未得到答案(https://dev59.com/7nRC5IYBdhLWcg3wJNmf)。现在可以肯定地说,如果你想要一个高质量的应用程序,那么WPF可能无法满足你的需求。 - Ian Boyd
1个回答

1
我们通过将字体大小和样式设置应用于 WPF UI 中的所有文本对象来处理此问题。这可以在运行时完成,也可以动态修改。但是,您必须非常小心 UI 的布局。当允许此类自定义时,它必须更加流畅(动态)。我通常为我的窗口和控件设置最小尺寸,以帮助适应此功能。堆栈/包装面板可以使此操作更容易实现。此外,使用 * 符号的网格可以允许文本框和标签根据需要扩展。
请注意,在创建本地化应用程序时,这也是一个要求,因为某些语言会翻译成更长的字符串,因此换行和调整大小至关重要。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接