我有datagridview
datasource
个datatable
,
当用户更改它的值时(在datagridview
的单元格中),cellendedit
将数据更新为database
,然后将database
中的新数据设置为该数据表并加载在datagridview
。
当我通过按Enter键结束编辑单元格时,一切都正常,但是当我想通过从单元格中保留焦点来结束编辑时,发生了异常:
操作无效,因为它导致对SetCurrentCellAddressCore函数的可重入调用。
使用此代码我会让错误消失:
private void RationFormulationdgv_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
if (!RationFormulationdgv.Rows[e.RowIndex].Cells[e.ColumnIndex].Selected)
{
return;
}
RationFormulationDBConnection.UpdateFeedsDetails(this);
RationFormulationDBConnection.SetFeedsIntoRationdormulationdgv(this);
}
但问题是在失去焦点时不会应用编辑。
我该如何解决这个问题?
答案 0 :(得分:1)
我通过将代码从CellEndEdit
事件移动到Cellvaluechanged
事件来解决我的问题,这似乎没问题并且coeds运行没有任何问题