5

ImageWindows Phoneアプリケーションで、ユーザーが[設定]->[テーマ]->[背景]で選択したグローバルな背景設定([暗い]または[明るい])に基づいて色を反転させる方法を見つけようとしています。

4

3 に答える 3

5

フレームワーク内で画像の色を反転する組み込みの方法はありません。

代わりに、電話でこれを行うオーバーヘッドがあるため、デザイン/ビルド時に両方のバージョンのイメージを作成し、テーマの可視性と不透明度を検出して、コードから表示するバージョンを選択する必要があります。

于 2011-01-11T12:48:42.173 に答える
4

私が最後にしたことは、マットが書いたものの続きであったことを付け加えなければなりません。

  • 画像のバージョン(暗い部分と明るい部分)が異なる2つの異なる画像を作成し、まったく同じ位置に配置します
  • テーマリソースに基づいて可視性を設定する

コードは次のようになります。

<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 に答える
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 に答える