J'ai un UserControl en XAML avec deux boutons ....XAML UserControl DataTrigger
Lorsque la propriété « VideoEnable » dans mon C# changement de code à true je veux changer la couleur d'un bouton.
Le code suivant compile mais se bloque et je ne peux pas trouver une bonne solution
<UserControl.Triggers>
<DataTrigger Binding="{Binding VideoEnable}" Value="true">
<Setter Property="Button.Background" Value="Green" TargetName="VideoButton" />
<Setter Property="Grid.Background" Value="Blue" TargetName="videoGrid" />
</DataTrigger>
</UserControl.Triggers>
Maintenant, je l'ai essayé avec le code suivant, il ne tombe pas en panne, mais l'arrière-plan ne change pas: s
<UserControl.Resources>
<Style TargetType="{x:Type Button}">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=Videos}" Value="true">
<Setter Property="Button.Background" Value="Green" />
</DataTrigger>
</Style.Triggers>
</Style>
</UserControl.Resources>
public string Videos
{
get { return m_videos; }
set
{
m_videos = value;
NotifyPropertyChanged("Videos");
}
}
Ok, j'ai trouvé le problème ...
Ceci est mon bouton
<Button DataContext="{Binding LensesBtn}" Margin="0,5,0,0" FontSize="14" FontWeight="Bold" Height="40" Opacity="0.8" HorizontalAlignment="Stretch" Style="{StaticResource {x:Static ToolBar.ButtonStyleKey}}">
<Button.Background>#dbebf9</Button.Background>
<Button.BorderBrush>PowderBlue</Button.BorderBrush>
<Button.BorderThickness>4</Button.BorderThickness>
Lenses
</Button>
Lorsque je supprime les DataContext, les propriétés de style et arrière-plan tout cela fonctionne ....
Mais je vraiment besoin propriétés
des conseils?
Pouvez-vous poster le message d'erreur? –
L'application tombe en panne. Je pense que j'utilise le dataTrigger dans un mauvais sens: s? – Bert