在数据网格视图中,每个按钮单击新行

本文关键字:按钮 单击 新行 数据 数据网 网格 视图 | 更新日期: 2023-09-27 18:03:22

如何每次单击都显示新行?因为它所做的是替换第一行的值而不是添加新行

  private void button2_Click(object sender, EventArgs e)
 {
      DataTable dtbl = new DataTable();
      dtbl.Columns.Add("1st Header");
      dtbl.Columns.Add("2nd Header");
      dtbl.Columns.Add("3rd Header");
      dtbl.Rows.Add("1","2","3");                
      dgv.DataSource = dtbl;
 }

在数据网格视图中,每个按钮单击新行

因为每次单击都初始化一个新的数据表。把你的DataTable初始化和数据源分配到另一个函数中,让你的DataTable私有,这样你就可以在按钮点击中使用它-

    DataTable dtbl;
    private void InitializeDataTable()
    {
        dtbl = new DataTable();
        dtbl.Columns.Add("1st Header");
        dtbl.Columns.Add("2nd Header");
        dtbl.Columns.Add("3rd Header");
        dgv.DataSource = dtbl;
    }

现在,单击按钮,使用DataTable添加新行。NewRow -

    private void button2_Click(object sender, EventArgs e)
    {
        DataRow newRow = dtbl.NewRow();
        dtbl.Rows.Add(newRow);
        dgv.Refresh();
    }