WPF DPI问题

我开发了一个在我的计算机上看起来很棒的应用程序但是当我将它安装在具有不同分辨率和DPI设置的其他计算机上时,它看起来很糟糕。 控件彼此重叠,这只是悲惨的。 有没有人对如何避免这个有任何建议?

Windows无法知道屏幕上的本机DPI(每英寸点数),因为屏幕无法将其告知计算机。 这意味着很多人将拥有DPI设置,这与他们的显示器本机DPI不同。

那么这如何适合整个“WPF使用的DIP(设备无关像素)” – 辩论? 好吧,对于WPF来计算制作DIP的大小,它需要1个信息和1个不变量:它需要知道你正在运行的分辨率(不是问题),它需要你将屏幕设置为其原始DPI。 如果您的屏幕未设置为本机DPI,则与屏幕的物理大小相比,像素可能会比它们应该更大或更小。

真的很难解释,看看这些博客文章: http: //www.odewit.net/ArticleContent.aspx ? id = WpfDpiScaling&lang = en&format = html http://blogs.microsoft.co.il/blogs/ tomershamam / archive / 2007/11/30 / wpf-is-dpi-depended.aspx http://www.wpflearningexperience.com/?p=41 (现在下来:()

一般情况下,你应该使用滚动条,分页控件等东西来扩展你的UI,以避免重叠:)