我有一個WPF DataGrid,我希望能夠更新,插入和刪除。我使用ObservableCollection綁定到DataGrid.DataContext。無法插入或從我的WPF DataGrid中刪除
當DataGrid的SelectionChanged()事件觸發時,我執行Context.SaveChanges()來回寫數據庫。
但是,以上只適用於我更新現有記錄。當我嘗試通過點擊DG中的最後一行來添加新記錄或者當我按下刪除時,SaveChanges()不會執行任何操作。數據不會被添加或刪除。
如何添加或刪除DataGrid中的記錄?這裏是我的DG XAML:
<DataGrid AutoGenerateColumns="False" Margin="0,12,0,89" Name="grdContact"
CanUserAddRows="True" SelectionMode="Single" IsReadOnly="False" CanUserDeleteRows="True"
ItemsSource="{Binding}"
IsSynchronizedWithCurrentItem="True"
Focusable="True"
SelectionChanged="grdContact_SelectionChanged"
<DataGrid.Columns>
<DataGridTextColumn Header="Last Name" Width="150" Binding="{Binding LastName}"/>
<DataGridTextColumn Header="First Name" Width="150" Binding="{Binding FirstName}"/>
</DataGrid.Columns>
</DataGrid>
我的代碼背後 - 僞代碼:
private void Window_Loaded(object sender, RoutedEventArgs e)
{
var CustomerObj = new ObservableCollection<Contact>(GetContacts());
grdContact.DataContext = CustomerObj;
}
private void grdContact_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
Context.SaveChanges();
}
你也可以考慮[直接綁定到'EntityCollection'](http://msdn.microsoft.com/en-us/庫/ bb738469.aspx)。 – user7116