0
我的DataGridView
在我的View Model中绑定到ObservableCollection
。 收藏品中的物品INotifypropertyChanged
。项目从EF加载一些字段并从Web请求一些字段。使用MVVM从DataGridView保存更改的最佳方式
用户可以编辑DataGridView
中的一些字段。当用户编辑单元格时(没有任何“提交”按钮),如何保存数据库中项目的更改?
我可以订阅列表中的每个项目列表PropertyChanged
事件。这是一个好方法吗?
像这样的事情在事件处理程序:
private void Item_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
{
var item = (TradeItemViewModel) sender;
if (e.PropertyName == "CountLimint" || e.PropertyName == "PriceLimit")
{
var repository = new ItemsRepository();
var dto_item = repository.GetById(item.ClassId, item.IntanceId);
dto_item.CountLimit = item.CountLimint;
dto_item.PriceLimit = item.PriceLimit;
repository.Update(dto_item);
}
}
这是一种方法。 – Will