如何“敲定”新行
所以我今晚用c#windows窗体应用程序遇到了一些麻烦。 当前选定的新行仍然是默认值时,是否可以向数据网格视图插入新行? 或者,如果我想以编程方式更改值,我如何模拟用户编辑文本框以完成行?
为了澄清,当一行是一个新行(并且在isNewRow
属性中显示为true)时,我无法弄清楚如何更改isNewRow = true
状态以在下面生成一个新的空行。
我已经尝试过dataGridView.EndEdit()
, dataGridView.CurrentRow.DataGridView.EndEdit()
, bindingSource.EndEdit()
,而这些都没有真正完成。 (另外,使用dataGridView.BeginEdit()
将文本框放入editmode
,这editmode
,因为我似乎无法以编程方式编辑单元格)
理想情况下,我希望能够继续在新行上输入,同时使用自定义控件更改其值,并在下面显示一个新行。
有没有人对此有任何解决方案?
好的,所以我想到了如何使这项工作。 使用我的自定义控件修改值时,我不得不使用
bindingSource.EndEdit(); dataGridView.NotifyCurrentCellDirty(true); dataGridView.EndEdit(); dataGridView.NotifyCurrentCellDirty(false);
因此,每当对新行进行更改时,它都会强制提交行,并在datagridview的末尾添加一个新的空行行空间。
但是,我不必使用Validate()。