我正在关注this tutorial并尝试使用Editable ComboBox
而不是教程中演示的DataGrid
来实现Data Binding
。
我遇到的唯一问题是我无法以这种方式向数据库添加新项目。
这是我如何加载数据:WPF实体框架绑定
private DbEntities db = new DbEntities();
private void Window_Loaded(object sender, RoutedEventArgs e)
{
CollectionViewSource productViewSource =
((CollectionViewSource)(this.FindResource("productViewSource")));
db.Product.Load();
productViewSource.Source = db.Product.Local;
}
,并在Button_Click
事件中,我尝试没有成功下列方法:
db.Product.Add(new Product() { ProductCode = "", Description = "" });
db.Product.Load();
productViewSource.Source = db.Product.Local;
productComboBox.Items.Refresh();
productViewSource.View.MoveCurrentToLast();
和:
ListCollectionView lcv = productComboBox.ItemsSource as ListCollectionView;
lcv.AddNewItem(new Product() { ProductCode = "", Description = "" });
lcv.MoveCurrentToLast();
使用提供的DataGrid
默认DataSource
模板按预期方式工作,在空的底部行上添加新项网格。
请指教。
因此添加了产品,但它的字段是空的?如果没有更改字段的代码,即“ComboBox”,很难诊断问题。 – icebat