Question

Je suis en train de travailler sur la façon d'avoir un contrôle Image dans mon application Windows Phone inverti ses couleurs en fonction des paramètres d'arrière-plan global (soit « Dark » ou « Light ») choisi par l'utilisateur dans Configuration-> Thèmes- > Arrière-plan.

Était-ce utile?

La solution

Il n'y a pas intégré façon d'inverser les couleurs d'image dans le cadre.

Au lieu de cela, en raison de la surcharge de le faire sur le téléphone, vous devez créer les deux versions de l'image au moment de la conception / construction, puis choisir la version à affichage à partir de votre code en détectant Theme Visibilité et Opacité .

Autres conseils

Je dois ajouter que ce que je l'ai fait à la fin était une continuation de ce que Matt a écrit.

  • créer deux images différentes qui ont des versions différentes de l'image (obscurité et la lumière) et les placer dans la position exacte même
  • définir leur visibilité en fonction de la ressource thème

les regards de code comme ceci:

<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" />

Cette question est de 1,5 ans maintenant. Mais ici est la meilleure façon de faire ce que vous voulez. L'exemple donné, il est très simple comme

<Button>
    <Image Stretch="None" Source="{Binding Converter={StaticResource ThemedImageConverter}, ConverterParameter={StaticResource PhoneBackgroundColor} }"
           DataContext="/WP7SampleProject4;component/Images/{0}/appbar.feature.camera.rest.png" />
</Button>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top