0
我有一个从MySQL查询生成的DataGrid。我想能够通过修改DataGrid直接编辑数据库。基本上,我需要的是产生这样的字符串用户已完成编辑单元格后:MySQL更新一次WPF DataGrid单元格编辑
伪代码:
“UPDATE current_table SET current_column_name = new_cell_value WHERE ID =数字,是在隐藏的第一个单元格编辑的行“
什么是最简单的方法来实现这一点?
我试过看DataGrid的属性和事件,但到目前为止我找不到任何“CellEditEnded”事件,也不能找到如何获取新值或在该行的第一个单元格中的id。
编辑: 好吧,我已经取得了一些进展,我现在能够得到id和列名称,但问题是我无法获得新的单元格值。我认为问题在于此代码在CellEditEnding-event中触发,所以更改尚未提交。我怎样才能解决这个问题?
DataRowView dataRow = (DataRowView)gameDatagrid.SelectedItem;
int index = gameDatagrid.CurrentCell.Column.DisplayIndex;
string columnName = gameDatagrid.CurrentCell.Column.Header.ToString();
string cellValue = dataRow.Row.ItemArray[index].ToString();
string id = dataRow.Row.ItemArray[0].ToString();
MessageBox.Show(id + " : " + columnName + " : " + cellValue);
看看https://social.msdn.microsoft.com/Forums/vstudio/en-US/e71304ed-22b1-4882-9f5c-d9e42ad97445/how-to -get-new-value-in-a-datagrid-cell-after-editing-cell?forum = wpf – 2014-10-17 15:18:18
现在一切都像魅力一样,谢谢Jossef! – fnx 2014-10-17 15:23:58
Fo-shizzle my nizzle :)发布你的问题的答案 – 2014-10-17 15:25:28