5

我正在尝试研究如何Image根据用户在设置->主题->背景中选择的全局背景设置(“暗”或“亮”)在我的 Windows Phone 应用程序中设置一个控件来反转其颜色。

4

3 回答 3

5

没有内置的方法可以在框架内反转图像颜色。

相反,由于在手机上执行此操作的开销,您应该在设计/构建时创建图像的两个版本,然后通过检测Theme Visibility 和 Opacity从代码中选择要显示的版本。

于 2011-01-11T12:48:42.173 回答
4

这个问题现在已经 1.5 岁了。但这是做你想做的最简单的方法那里给出的例子很简单

<Button>
    <Image Stretch="None" Source="{Binding Converter={StaticResource ThemedImageConverter}, ConverterParameter={StaticResource PhoneBackgroundColor} }"
           DataContext="/WP7SampleProject4;component/Images/{0}/appbar.feature.camera.rest.png" />
</Button>
于 2012-07-06T19:02:34.203 回答
4

我必须补充一点,我最后所做的是马特所写内容的延续。

  • 创建两个具有不同版本图像(深色和浅色)的不同图像,并将它们放置在完全相同的位置
  • 根据主题资源设置其可见性

代码如下所示:

<Image Height="30" HorizontalAlignment="Center" Margin="0,0,0,220" Name="imgDark" Stretch="Fill" Visibility="{StaticResource PhoneLightThemeVisibility}" VerticalAlignment="Center" Width="30" Source="/MyApplication;component/imageDarkTheme.png" />
<Image Height="30" HorizontalAlignment="Center" Margin="0,0,0,220" Name="imgLoading" Stretch="Fill" Visibility="{StaticResource PhoneDarkThemeVisibility}" VerticalAlignment="Center" Width="30" Source="/MyApplication;component/imageLightTheme.png" />
于 2011-01-11T23:51:30.770 回答