目标: 我想在用户点击“添加新行 - 按钮”后在DGV中设置默认值。
问题:
我无法在.click事件中设置datacolumn.defaultvalue
,因为尚未创建新列。
从那时起,我无法在datagridview.rowadded事件中设置datacolumn.defaultvalue
,当我加载DGV时,它正在尝试为dgv中的每一行设置defaultvalue(我从sql server加载我的数据集)。但它应该只为添加的新行添加默认值。
解决方案: 我试过很多事情都没有用。也许有可能结合这些事件。喜欢 如果事件1和事件2那么。但我不知道如何。
答案 0 :(得分:0)
订阅DataGridView.DefaultValuesNeeded
事件,并在事件处理程序中添加默认值。
例如,请参阅此MSDN链接。但请仔细阅读备注部分,因为每种操作模式(数据绑定或虚拟)的行为都不同。
如果使用基础DataTable
添加新行,则将默认值设置如下。
DataTable table = dataGridView1.DataSource as DataTable;
if (table != null)
{
DataRow row = table.NewRow();
row["columnName"] = defaultValue;
table.Rows.Add(row);
}