我有一个databound
DataGridView
。 要插入新行,我处理DefaultValuesNeeded
。在DataGridView中接受新的一行而无需手动更改其值
新行以我指定的值显示。到这里它工作正常。
此时该行尚未附加到底层的DataTable
。 没关系。
接受新行的唯一方法是将任何单元格设置为编辑模式,更改
的值并关闭编辑器。
现在新行被添加到DataTable
。
我的问题是,我想用最少的用户输入添加行。
如果用户决定的值都很好,他/她应该是能够确认
不改变某些单元格的值(和设置他们回到原来的值)
有没有办法来实现这一目标,例如通过按输入,陷阱命令并强制
DataGridView
做如同单元格值更改一样?
我已经尝试更改dgv_KeyDown()
中的值,但未成功。
有什么建议吗?
private void dgv_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
if (dgv.CurrentCell != null && dgv.CurrentCell.OwningRow.DataBoundItem == null)
{
//ToDo: Accept the new row
e.Handled = true;
}
}
}
这并不完全是我打算做的。我想将不附加喷嘴的行添加到我的数据源中,而不是阻止更改值。 – TomB