一个winrt通用应用的背景图
Background image of a winrt universal application
我有两张图片,一张用于 windows phone,第二张用于 windows 项目。我希望这些图片出现在各自平台的每个页面上。
我目前正在做的是在 if windows phone 和 if windows 应用代码片段中设置来自 app.cs
的背景。
如果有的话,我想要任何 xaml
方法。
将每个页面的背景设置为公共资源,然后将该资源设置为您的图像。默认情况下,页面的背景将设置为
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
您可以在 app.xaml 的资源中将 ApplicationPageBackgroundThemeBrush 设置为 ImageBrush,但由于您想要 Windows 和 Windows Phone 的不同图像,请添加另一个间接级别。在两个项目中创建同名的 ResourceDictionary,然后将该字典合并到 Application.Resources.
在app.xaml中:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="PlatformDictionary.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
然后在Windows和WindowsPhone工程中的PlatformDictionary.xaml文件中设置实际刷机。通常你会在高对比度模式下回到默认值,但如果你在图像中有重要信息,你可以使用 contrast resource qualifiers 提供图像的高对比度版本 PhonePageBackground.contrast-high.png :
<ResourceDictionary.ThemeDictionaries>
<ResourceDictionary x:Name="Default">
<ImageBrush x:Key="ApplicationPageBackgroundThemeBrush" ImageSource="Assets/PhonePageBackground.png"/>
</ResourceDictionary>
<ResourceDictionary x:Name="HighContrast">
<SolidColorBrush x:Key="ApplicationPageBackgroundThemeBrush" Color="{ThemeResource PhoneBackgroundColor}"/>
</ResourceDictionary>
</ResourceDictionary.ThemeDictionaries>
除了默认主题中的 Windows 页面背景图像和 HighContrast 主题中的 SystemColorWindowColor 之外,Windows 版本将相同。
我有两张图片,一张用于 windows phone,第二张用于 windows 项目。我希望这些图片出现在各自平台的每个页面上。
我目前正在做的是在 if windows phone 和 if windows 应用代码片段中设置来自 app.cs
的背景。
如果有的话,我想要任何 xaml
方法。
将每个页面的背景设置为公共资源,然后将该资源设置为您的图像。默认情况下,页面的背景将设置为
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
您可以在 app.xaml 的资源中将 ApplicationPageBackgroundThemeBrush 设置为 ImageBrush,但由于您想要 Windows 和 Windows Phone 的不同图像,请添加另一个间接级别。在两个项目中创建同名的 ResourceDictionary,然后将该字典合并到 Application.Resources.
在app.xaml中:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="PlatformDictionary.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
然后在Windows和WindowsPhone工程中的PlatformDictionary.xaml文件中设置实际刷机。通常你会在高对比度模式下回到默认值,但如果你在图像中有重要信息,你可以使用 contrast resource qualifiers 提供图像的高对比度版本 PhonePageBackground.contrast-high.png :
<ResourceDictionary.ThemeDictionaries>
<ResourceDictionary x:Name="Default">
<ImageBrush x:Key="ApplicationPageBackgroundThemeBrush" ImageSource="Assets/PhonePageBackground.png"/>
</ResourceDictionary>
<ResourceDictionary x:Name="HighContrast">
<SolidColorBrush x:Key="ApplicationPageBackgroundThemeBrush" Color="{ThemeResource PhoneBackgroundColor}"/>
</ResourceDictionary>
</ResourceDictionary.ThemeDictionaries>
除了默认主题中的 Windows 页面背景图像和 HighContrast 主题中的 SystemColorWindowColor 之外,Windows 版本将相同。