Ich möchte ein Kontrollkästchen alle Kontrollkästchen in XAML implementieren.
Ich habe mehrere (templated) Checkboxen in einer Listview. Dann habe ich eine Checkbox außerhalb der Listenansicht, die ein "Alles auswählen" Verhalten haben soll. Ich könnte das Problem in meinem ViewModel leicht lösen, aber ich denke, es wäre eleganter, dies in XAML zu tun, da das Kontrollkästchen "Alle auswählen" (direkt) nichts mit meinem ViewModel zu tun hat. Der Code sieht etwa so aus:Wählen Sie alle Checkbox in XAML mit Trigger?
<ListView>
<ListView.ItemTemplate>
<DataTemplate>
<CheckBox Content="Globale Eingabe"
Name="SelectSingle"
IsChecked="{Binding IsChecked}">
</CheckBox>
</DataTemplate>
<ListView.ItemTemplate>
</ListView>
<CheckBox Name="SelectAll" />
Wie Sie das IsChecked Eigentum des SelectSingle sehen ist bereits an mein Viewmodel gebunden. Also ich denke, ich brauche einen Trigger, um den Status der Checkbox zu manipulieren.
Jetzt habe ich versucht, schon etw wie folgt aus:
<CheckBox Content="Globale Eingabe"
Name="SelectSingle"
IsChecked="{Binding IsChecked}">
<CheckBox.Triggers>
<Trigger SourceName="SelectAll" Property="IsChecked" Value="True">
<Setter TargetName="SelectSingle" Property="IsChecked" Value="True"/>
</Trigger>
</CheckBox.Triggers>
</CheckBox>
oder etw wie folgt aus:
<CheckBox Content="Globale Eingabe"
Name="SelectSingle"
IsChecked="{Binding IsChecked}">
<CheckBox.Triggers>
<DataTrigger Binding="{Binding ElementName=SelectAll, Path=IsChecked}"
Value="True">
<Setter TargetName="Check"
Property="IsChecked"
Value="True"/>
</DataTrigger>
</CheckBox.Triggers>
</CheckBox>
ich das gleiche auch in einem Stil versucht, aber ohne Erfolg. Ich erhalte immer einen Fehler, etw in der Art von "static member" IsCheckedProperty konnte nicht im Typ "ContentPresenter" gefunden werden.
Das hört sich jetzt so an, als würde die Target/SourceName-Bindung nicht funktionieren, aber warum? gibt es etwas, das ich vermisst?
Ich bin nicht ganz zufrieden damit, da dies explizit nicht das ist, was ich wollte. Aber ich denke, es ist einfacher (hässlicher) als besser, es komplizierter (schöner) zu machen (ich denke, kompliziert macht es wiederum hässlicher). – Torsten