在C#
WPF
中工作。好的,我有一個datagrid
,它在我的項目中綁定到entity framework
。當更新顯示的值時,datagrid函數很棒。我使用MyDataEntity.SaveChanges()
將更改推送到database
,一切正常。將新的Datagrid行保存到數據庫中
添加新行時出現問題。我在我的XAML中設置了CanUserAddRows="True"
,因此用戶可以添加新行。當我必須將新行保存到數據庫時,問題就出現了。由於某種原因,SaveChanges()
調用不會更新數據庫。我試圖做的是將當前行的所有值拉入IList
,然後訪問各個值,以便我可以調用MyDataEntities.Add()' on the
RowEditEnding`事件,但是這造成了一些其他問題。主要是,我無法訪問IList中的個人價值觀。當我查看列表中的數據時,它就在那裏,我已經看到它了,我不能將它分配給任何東西。
真的,我的問題是雙重的。
1:我怎樣才能在新入行保存到我的數據庫
2:我如何可以訪問的IList
2的值會是一個更好的解決方案,因爲這樣我可以使用以下代碼填充數據庫中的其他列以及將數據傳遞給其他方法以獲取數據庫中特定列的值。
private void DataGrid_RowEditEnding(object sender, DataGridRowEditEndingEventArgs e)
{
IList rows = DataGrid.SelectedItems;
TableName tbl = new TableName
{
Name = rows[1].ToString(),
Qty = decimal.Parse(rows[4].ToString()),
Type = rows[6].ToString(),
TQty = ConvertQtoT(rows[4].ToString(), rows[6].ToString(),
OnLIst = true
};
MyDataEntity.TableNames.Add(tbl);
MyDataEntity.TableNames.SaveChanges();
}
}
數據網格不中內置了您插入功能必須實現自己的插入函數插入到你的集合 –