微软Surface& WPF

时间:2014-03-08 11:02:16

标签: wpf windows-8 screen-resolution windows-applications

我的WPF应用程序使用1024x768屏幕分辨率,现在我想以高分辨率在Microsoft Surface上运行此应用程序,我创建了分辨率为1366x768的新窗口,但不幸的是我可以&#39 ;让它在Surface上工作正常,我在我的笔记本电脑上测试它,它100%工作,但我不明白为什么它会在Surface上以相同的方式工作。

如果有任何有Surface经验的人可以帮忙吗?

更新

当我在我的笔记本电脑上运行分辨率1920x1080全屏工作的WPF窗口时,问题是在Surface上以相同的分辨率运行应用程序并不适合全屏,请参阅此屏幕截图更清晰:

enter image description here

3 个答案:

答案 0 :(得分:4)

也许你的表面和笔记本电脑有不同的DPI设置。请参阅here如何处理该问题。

答案 1 :(得分:1)

根据提供的信息,您的WPF窗口布局可能没有充分考虑显示文本和不同设备上的项目大小的差异。

在Surface Pro和笔记本电脑上:

  1. 从桌面上下文菜单中选择“屏幕分辨率”。
  2. 从屏幕中选择“使文字和其他项目更大或更小” 分辨率窗口。
  3. 检查“更改所有项目的大小”滑块的位置。
  4. 默认情况下,Surface Pro设置为较大。新的Windows 8安装将设置为Smaller。

答案 2 :(得分:0)

在WPF中,你不应该设置一个恒定的窗口大小,而应该:

  1. 通过使用自动尺寸和网格而不是常量尺寸和面板,使窗口内容对窗口大小做出反应

  2. 您可以使用WindowState="Maximized"使窗口全屏显示

  3. 您可以使用minwidth和minheight来防止窗口减少太多。