Changer l'image de fond d'un Bouton lorsqu'il est pressé à l'aide de VisualStateManager
J'ai ce bouton :
<Button x:Name="PrevAdIcon" Tag="-1" Visibility="Collapsed" Width="80" Height="80" Click="PrevAd">
<Button.Background>
<ImageBrush AlignmentY="Top" Stretch="None" ImageSource="/Images/prev.png"></ImageBrush>
</Button.Background>
</Button>
Comment puis-je changer le fond d' /Images/prev-selected.png
lorsqu'un utilisateur appuie sur le bouton ? Il va lui donner un feed-back, puisque c'est un WP7 application
ce que j'ai à ce jour (pas de travail) :
<vsm:VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetName="Background" Storyboard.TargetProperty="Background">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<ImageBrush ImageSource="/Images/prev-selected.png" Stretch="Fill"/>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
Je ne vois aucune référence à l'arrière-plan que vous souhaitez passer à (/Images/prev-sélectionné.png) dans votre code.
J'ai édité. Le ImageBrush ImageSource est Images/prev-sélectionné.png
J'ai édité. Le ImageBrush ImageSource est Images/prev-sélectionné.png
OriginalL'auteur Thomas Joulin | 2011-01-17
Vous devez vous connecter pour publier un commentaire.
Voir Peter Torr post sur "Pourquoi ne puis-je pas changer le Fond de mon Bouton sur un événement de Clic?" pour un exemple et une explication de comment faire cela.
OriginalL'auteur Matt Lacey
Autant que je sache, vous ne pouvez pas modifier la valeur de la propriété de la Source sur l'élément de l'Image en utilisant le VisualStateManager. Toutefois, vous pouvez simplement ajouter deux éléments de l'Image à la ControlTemplate: l'une pour l'état Normal et l'autre pour l'état Pressé, et de basculer la Visibilité dans l'état Enfoncé.
OriginalL'auteur Derek Lakin
Pour ajouter plus d'informations à Derek réponse, vous devriez regarder Gambit réponse ici pour plein XAML qui fonctionne
OriginalL'auteur onmyway133