我在添加按钮中代码如下:
private void buttonAdd_Click(object sender, EventArgs e)
{
dataGridView1.AllowUserToAddRows = true;
dataGridView1.ReadOnly = true;
}
原本是想新加一行,让用户自行添加数据,但这样做的话用户也可以修改原来的数据,请问有什么办法只允许用户更改新添加行的数据?
private void buttonAdd_Click(object sender, EventArgs e)
{
dataGridView1.AllowUserToAddRows = true;
dataGridView1.ReadOnly = true;
}
原本是想新加一行,让用户自行添加数据,但这样做的话用户也可以修改原来的数据,请问有什么办法只允许用户更改新添加行的数据?
//建立数据库连接
OleDbCommand cmd=new OleDbCommand("select Count(*) form tablename where '?'",mc);
mc.open();
if((int)cmd.ExecuteScalar==0)
{
//插入数据
}
else
{
//禁止修改
}
{
mydatagrid.ReadOnly = false;
mydatagrid.EditMode = DataGridViewEditMode.EditOnEnter;
ds.Tables[tabname].Rows.Add(ds.Tables[tabname].NewRow());
mydatagrid.DataSource = ds.Tables[tabname]; for (int i = 0; i < mydatagrid.Rows.Count - 1; i++)
{
mydatagrid.Rows[i].ReadOnly = true;
}
mydatagrid.Rows[mydatagrid.Rows.Count - 1].ReadOnly = false;
mydatagrid.CurrentCell = mydatagrid.Rows[mydatagrid.Rows.Count - 1].Cells[cellindex];
mydatagrid.BeginEdit(false);
}
{
mydatagrid.ReadOnly = false;
mydatagrid.EditMode = DataGridViewEditMode.EditOnEnter;
ds.Tables[tabname].Rows.Add(ds.Tables[tabname].NewRow());
mydatagrid.DataSource = ds.Tables[tabname]; for (int i = 0; i < mydatagrid.Rows.Count - 1; i++)
{
mydatagrid.Rows[i].ReadOnly = true;
}
mydatagrid.Rows[mydatagrid.Rows.Count - 1].ReadOnly = false;
mydatagrid.CurrentCell = mydatagrid.Rows[mydatagrid.Rows.Count - 1].Cells[cellindex];
mydatagrid.BeginEdit(false);
}
上面那个是我用的,直接贴过来的,参数多了,不好意思!