0

您好我正在开发一个 Windows 8 C#/Xaml Metro 应用程序。我采用了网格模板项目并根据我的设计要求进行了定制。

当我在 Windows 8 模拟器中测试应用程序时,它工作正常,但是当我使用 VS2012 本地机器选项在 Windows 8 桌面上运行应用程序时,我遇到了很多问题。

如果我使用 1366 * 768 的标准分辨率,它可以正常工作。如果我使用 1280 * 720 等低分辨率(低端分辨率),屏幕在很多情况下会缩小,这会导致很多问题,包括不规则和不一致的外观。

我的疑问是:

  1. 据我所知,Metro 的独特功能是以相同的方式以不同的分辨率缩放/渲染,那为什么它不能正确实现呢?

  2. 我是否遗漏了有关 Windows 8 Metro 屏幕分辨率的任何重要信息?

  3. 如何使 Metro 应用程序以相同的方式在不同分辨率的桌面上工作并提供一致的外观?

请告诉我。

提前致谢。

4

2 回答 2

4

这篇 MSDN 文章是关于如何扩展您的应用程序的绝佳来源: Scaling To different Screens

文章中可能与您相关的要点:

  • 应用程序的最低屏幕分辨率为 1024 x 768。您的上述分辨率 (1280 x 720) 不符合此最低要求。

  • 对于网格图形 - 如果您提供建议的尺寸(100%、140% 和 180%),可能会有所帮助。例如,对于标准网格尺寸 (250 x 250),您应该提供尺寸为 250 x 250 (100%)、350 x 350 (140%) 和 450 x 450 (180%) 的图像。您必须为您的应用程序使用两种命名方案(文件名方案或文件夹名称方案)之一来自动选择大小。例如,如果您在 xaml 中的图形名为“mygraphic.jpg”,那么您可以提供名为“mygraphic.scale-100.jpg”、“mygraphic.scale-140.jpg”和“mygraphic.scale”的缩放图像-180.jpg”。

  • 由于您在指出错误方面不是很具体,因此很难提出其他建议。一定要看看文章。

于 2013-01-18T15:24:15.427 回答
2

将您的内容面板包装在 Viewbox 中。它将缩放内容以填充可用空间。

于 2013-01-18T15:00:07.167 回答