我需要一个行数有限的datagridview。用户可以直接在单元格中键入行,也可以使用按钮来添加行。我在互联网上遇到过类似的问题,并在那里使用了代码,但它不能正常工作。
目前在我发布的代码中,它工作正常,直到我开始输入最后一行,然后我得到堆栈溢出异常。
如有任何帮助,我们将不胜感激。提前谢谢。
int maxNumberOfRows = 6;
private void dgv1_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
{
CheckRowCount();
}
private void dgv1_RowsRemoved(object sender, DataGridViewRowsRemovedEventArgs e)
{
CheckRowCount();
}
private void button1_Click(object sender, EventArgs e)
{
if (dgv1.Rows.Count < maxNumberOfRows)
dgv1.Rows.Add("Row added by button");
else
dgv1.Rows[dgv1.CurrentCell.RowIndex].Cells[0].Value = "Row added by button";
}
private void CheckRowCount()
{
if (dgv1.Rows.Count <= maxNumberOfRows)
dgv1.AllowUserToAddRows = true;
else
dgv1.AllowUserToAddRows = false;
}
发布于 2019-10-08 08:08:26
将if (dgv1.Rows.Count <= maxNumberOfRows)更改为if (dgv1.Rows.Count < maxNumberOfRows)
删除=字符。
https://stackoverflow.com/questions/58279755
复制