Si j'ai un ensemble de contrôles dans un StackPanel, existe-t-il un moyen générique de changer l'arrière-plan de la pile quand un contrôle dans StackPanel devient actif? (et de toute évidence, changer l'arrière-plan quand aucun contrôle dans le StackPanel a le focus). Le code suivant fonctionne pour moi, mais ce serait bien d'avoir une manière générique d'accomplir cette tâche plutôt que d'avoir à lister chaque contrôle dans chaque StackPanel de ma page.Modifier la couleur d'arrière-plan de WPF StackPanel lorsqu'un élément du panneau a le focus
Merci!
<StackPanel Margin="5">
<StackPanel.Style>
<Style TargetType="{x:Type StackPanel}">
<Style.Triggers>
<DataTrigger Binding="{Binding IsFocused, ElementName=chkOccupiedByMortgagor}" Value="true">
<Setter Property="Background" Value="Gray" />
<Setter Property="Opacity" Value=".5" />
</DataTrigger>
<DataTrigger Binding="{Binding IsFocused, ElementName=chkOccupiedByNewOwner}" Value="true">
<Setter Property="Background" Value="Gray" />
<Setter Property="Opacity" Value=".5" />
</DataTrigger>
</Style.Triggers>
</Style>
</StackPanel.Style>
<CheckBox Margin="2" x:Name="chkOccupiedByMortgagor">Mortgagor</CheckBox>
<CheckBox Margin="2" x:Name="chkOccupiedByNewOwner">New Owner</CheckBox>
<CheckBox Margin="2" x:Name="chkOccupiedByTenant">Tenant</CheckBox>
<CheckBox Margin="2" x:Name="chkOccupiedByUnknownOccupant">Unknown Occupant</CheckBox>
</StackPanel>
Cool! Exactement ce que je cherchais! Merci beaucoup! –