如何在DataGridview的末尾添加一行?

时间:2011-05-04 21:44:31

标签: visual-studio-2010

我的表单上有一个datagridview2,它有4列并且有数据。我想在它的末尾添加一行并用数据填充它。但是,当我使用'Me.DataGridView2.Rows.Add()'时,它会添加行但不会添加datagridview的结尾。有没有办法在datagridview的末尾添加一个空行?

3 个答案:

答案 0 :(得分:4)

datagridview中的最后一行是允许用户根据需要添加行。

设置DataGridView2.AllowUserToAddRows = False

然后尝试使用Me.DataGridView2.Rows.Add()。它将添加一个原始到结尾 的dataGridView

答案 1 :(得分:2)

我会upvote @ user1157690,但我没有足够的声誉这样做。为了在底部添加一个空行:

DataGridView2.AllowUserToAddRows = false;
for (int i = 0; i < 10; i++)
{ 
    DataGridView2.Rows.Add();
}
DataGridView2.AllowUserToAddRows = true;

这将允许您按照从最旧到最新的时间顺序以编程方式输入10个空白行,同时允许用户在必要时输入其他行。这是我所知道的允许用户灵活性和程序员一致性的最佳方法。

答案 2 :(得分:0)

我试过,它在DataGridView的末尾添加了一行。 我在表单中拖了一个DataGridView和一个按钮。 这是代码:

private void addRowbutton_Click(object sender, EventArgs e)
{
    dataGridView1.Rows.Add();
}

private void Form1_Load(object sender, EventArgs e)
{
   dataGridView1.Columns.Add("ID", "Product ID");
   dataGridView1.Columns.Add("Name", "Product Name");
   dataGridView1.Columns.Add("Description", "Description");
   dataGridView1.Columns.Add("Price", "Price");
   for (int i = 0; i < 2; i++) 
   {
     DataGridViewRow row = new DataGridViewRow();
     row.CreateCells(dataGridView1);
     row.Cells[0].Value = i;
     row.Cells[1].Value = "Product " + i;
     row.Cells[2].Value = "Description of Product " + i;
     row.Cells[3].Value = "99.99";
     dataGridView1.Rows.Add(row);  
   }
}

如果通过数据绑定填充datagridview,则无法以编程方式添加行。

相关问题