Hier ist ein Beispiel für das, was ich zu erreichen versuche:
<Window x:Class="CheckBoxBinding.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<StackPanel>
<CheckBox Name="myCheckBox">this</CheckBox>
<Grid>
<Grid.Resources>
<Style TargetType="ListBox">
<Style.Triggers>
<Trigger Property="{Binding ElementName=myCheckBox, Path=IsChecked}" Value="True">
<Setter Property="Background" Value="Red" />
</Trigger>
</Style.Triggers>
</Style>
</Grid.Resources>
<ListBox>
<ListBoxItem>item</ListBoxItem>
<ListBoxItem>another</ListBoxItem>
</ListBox>
</Grid>
</StackPanel>
</Window>
Wenn ich versuche, es auszuführen, erhalte ich diese XamlParseException:
Eine "Bindung" kann nicht auf die Eigenschaft "Property" vom Typ "Trigger" gesetzt werden. Ein 'Binding' kann nur auf eine DependencyProperty eines DependencyObjects gesetzt werden.
Wie kann ich also eine Eigenschaft der ListBox mit der IsChecked-Eigenschaft einer CheckBox verbinden?