我目前正在使用資料網格來:
- 根據所選行中先前存在的序列號更新當前值。
- 如果資料庫中不存在之前的序列號(基本上是空行),則在資料庫中插入新行。
我目前的方法是使用 RowEditEnding 觸發器在更改之前從所選行中提取上一個序列號,然后我想使用另一個觸發器讀取更改后的行中的更新資料以發送相應的 sql命令到服務器。資料網格中最好的事件處理程式是什么?有更好的方法嗎?
uj5u.com熱心網友回復:
您可以在相同的 RowEditEnding 函式中執行此操作:
private bool _handle = true;
private void dataGridAddItem_RowEditEnding(object sender, DataGridRowEditEndingEventArgs e)
{
var item = (MyRowClass)e.Row.DataContext;
var grid = (DataGrid)sender;
if (_handle)
{
//get your values before they changed here
_handle = false;
grid.CommitEdit();
//do whatever you need to do here (the values on item will change from before to after the CommitEdit
_handle = true;
}
}
如果您不使用如上所示的 _handle 布林值,您將進入無限回圈。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/489991.html