Xaml 屏幕分辨率相关的图像源

Xaml 屏幕分辨率相关的图像源,xaml,windows-8,microsoft-metro,winrt-xaml,Xaml,Windows 8,Microsoft Metro,Winrt Xaml,我正在开发一个Windows8Metro(耶!)应用程序。如何提供依赖于屏幕分辨率的图像源 根据指南,我们也可以使用图像命名约定来实现它 我有一个图像控件,如下所示 <Image Source="Assets/test.jpeg"/> 我在资产文件夹中还有test.scale-100.jpg、test.scale-140.jpg和test.scale-180.jpg图像。每个图像具有不同的图标颜色,以标识加载的图像 如果我在模拟器中运行应用程序并更改屏幕分辨率,我仍然可以看到

我正在开发一个Windows8Metro(耶!)应用程序。如何提供依赖于屏幕分辨率的图像源

根据指南,我们也可以使用图像命名约定来实现它

我有一个图像控件,如下所示

<Image Source="Assets/test.jpeg"/> 

我在资产文件夹中还有test.scale-100.jpg、test.scale-140.jpg和test.scale-180.jpg图像。每个图像具有不同的图标颜色,以标识加载的图像

如果我在模拟器中运行应用程序并更改屏幕分辨率,我仍然可以看到test.scale-100.jpg中的任何分辨率。为什么会这样?在哪种情况下,操作系统将加载test.scale-140.jpg或test.scale-180.jpg映像


编辑:我让它工作了。在模拟器中启动应用程序后,按home buton关闭它并卸载它。在VS中,右键单击Project并单击Deploy。应用程序现在应该部署到模拟器。更改分辨率并启动应用程序。您现在应该看到操作系统加载的正确映像。冲洗并重复以测试其他分辨率

缩放是自动的。如果图像名称正确,并且在模拟器中更改分辨率,则必须重新启动应用程序才能查看缩放图像。这不是在飞行中发生的,IIRC

  • 终于开始工作了。关闭应用程序并从中卸载 模拟器

  • 在VS中,右键单击项目并单击部署

  • 更改为所需的屏幕分辨率并启动应用程序。操作系统不应根据分辨率选择合适的图像

  • 冲洗并重复相同步骤,以测试不同分辨率的图像


  • 这就是我正在做的。从VS按F5。它以10.6英寸1024x768分辨率启动模拟器。应用程序启动&我看到test.scale-100.jpg与预期一样。接下来,我通过按HOME按钮关闭应用程序。将模拟器的屏幕分辨率更改为27英寸,然后启动应用程序。我仍然看到相同的test.scale-100.jpg,而不是test.scale-140.jpg或test.scale-180.jpg。你做的比你需要做的更多。你只需要关闭应用程序,然后重新启动它。并不是说按Windows键(根据您对我的回答的评论)不会关闭应用程序,而是只会将焦点放在开始屏幕上。要关闭应用程序,请按Alt-F4,或从屏幕顶部向下滑动至底部。一旦你正确关闭了应用程序,以不同的模拟器分辨率重新启动它就足以反映出变化。我到家后会检查这一点。也会相应地更新答案。谢谢你的提示。你的编辑-你做的比你需要的多。你只需要关闭应用程序,然后重新启动它。并不是说按Windows键(根据您对我的回答的评论)不会关闭应用程序,而是只会将焦点放在开始屏幕上。要关闭应用程序,请按Alt-F4,或从屏幕顶部向下滑动至底部。正确关闭应用程序后,以不同的模拟器分辨率重新启动应用程序就足以反映更改。