Ich bin mit dem Datagrid aus dem WPF-Toolkit in .NET 3.5.DataGridCheckBoxColumn Zweiweg Bindung
Ich habe eine Datagrid-Spalte eine boolean Eigenschaft von meinem Quellobjekt gebunden.
Die Checkbox ruft die Eigenschaften des boolean Accessor korrekt erhalten.
jedoch bei der Überprüfung oder die Box unchecking die anstelle des Satzes erhalten wird aufgerufen wird.
<DataGrid AutoGenerateColumns="False" ItemsSource="{Binding Object, Source={StaticResource model}, Mode=TwoWay}">
<DataGrid.Columns>
<DataGridCheckBoxColumn Binding="{Binding BoolProperty, mode=TwoWay}"/>
</DataGrid.Columns>
</DataGrid>
Wenn ich stattdessen eine Datagridtemplatecolumn mit einem Kästchen zum Ankreuzen in sie verwenden die Eigenschaft korrekt jedoch gesetzt ist, dann ist es komplizierter ein schönes Layout zu erstellen.
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding BoolProperty, Mode=TwoWay}"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
Was mache ich falsch mit der DataGridCheckBoxColumn?
Ok danke in diesem Fall das Verhalten ist notwendig, da, wenn der Benutzer überprüft die Box Ich möchte visuell aktualisieren etwas auf der Bildschirm. Gibt es Möglichkeiten, dies mit der DatGridCheckBoxColumn zu tun? Auch, was ist der beste Weg, so dass auf dem ersten Klick muss der Benutzer nicht zweimal klicken, um die Zeile dann das Kontrollkästchen auswählen, können Sie die Zeile mit dem Mouseover-Ereignis auswählen? – DanBrum
@DanBrum: Ich weiß nicht, wenn Sie das mit dieser Spalte umgehen können, könnten Sie Ihre eigene DataGridCheckBoxColumn definieren, wenn Sie keinen Weg finden. Auswahl auf MouseOver sollte möglich sein. –