我創建了一個使用實體框架和WPF作爲UI的.NET項目。該UI包含兩列,一個普通只讀DataGridTextColumn
和一個DataGridTemplateColumn
有Checkbox
內啓用單單擊編輯一個DataGrid:綁定WPF控件更改後立即更新.NET EF數據庫
<DataGrid AutoGenerateColumns="False" EnableRowVirtualization="True" ItemsSource="{Binding}" >
<DataGrid.Columns>
<DataGridTemplateColumn >
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsSelectedForDisplay}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Binding="{Binding FullName}" IsReadOnly="True"/>
</DataGrid.Columns>
</DataGrid>
我已經檢查了複選框的結合,通過改變某些項工作在數據庫中直接。現在我希望應用程序立即將更改複選框提交到底層數據庫。我怎麼能這樣做?添加一些事件處理程序到視圖邏輯感覺不對,但我不知道我有什麼替代方案。
我不知道更多,但您應該使用UpdateSourceTrigger PropertyChanged爲IsChecked屬性。 – Vishal
我不認爲它是可以自動更新數據庫。您必須使用'checked'事件並調用數據庫更新,或者使用實現INotifyPropertyChanged的類並通過單擊按鈕處理更新。 – voddy