如何向datagridview winforms添加行?

时间:2013-04-12 06:59:42

标签: c# winforms datagridview

我想将行添加到datagridview。我尝试了很多可能性,但它没有出现任何内容。我认为最好的解决方案是创建一个数据表,然后将其用作gridview的数据源。我用winforms。请,欢迎任何其他想法。这是我到目前为止所尝试的:

public DataTable GetResultsTable()
    {
        DataTable table = new DataTable();
        table.Columns.Add("Name".ToString());
        table.Columns.Add("Color".ToString());
        DataRow dr;
        dr = table.NewRow();
        dr["Name"] = "Mike";
        dr["Color "] = "blue";
        table.AcceptChanges();
        return table;
    }
public void gridview()
{
     datagridview1.DataSource=null;
     datagridview1.DataSource=table;
}

4 个答案:

答案 0 :(得分:10)

我在你的代码中发现了两个错误:

  1. dr["Color "] = "blue";列颜色应没有空格dr["Color"] = "blue";
  2. 您忘记在表格中添加行

    table.Rows.Add(dr);

  3. 你可以试试这个

    public DataTable GetResultsTable()
    {
        DataTable table = new DataTable();
        table.Columns.Add("Name".ToString());
        table.Columns.Add("Color".ToString());
        DataRow dr = table.NewRow();
        dr["Name"] = "Mike";
        dr["Color"] = "blue";
        table.Rows.Add(dr);
        return table;
    }
    public void gridview()
    {          
        datagridview1.DataSource =  GetResultsTable();
    }
    

答案 1 :(得分:3)

有不同的方式,但在不同的条件下。

正如下面的代码在字符串数组中显示gridview.add方法:

datagridview1.Rows.Add( { val, val, val });

这取决于你想要应用它的背景和情况。

答案 2 :(得分:3)

尝试此方法:

dataGridView1.Columns.Add("Col1", "Name"); // "Col1" is the name of the column and  "Name" is the column header text"
dataGridView1.Columns.Add("Col2", "Age");
dataGridView1.Rows.Add("ABC", "25");

希望这会有所帮助:)

答案 3 :(得分:2)

DataGridView dgv = new DataGridView();

DataTable table = new DataTable();

dgv.DataSource = table;

table.Columns.Add("Name");
table.Columns.Add("Color");
table.Rows.Add("Mike", "blue");
table.Rows.Add("Pat", "yellow");

this.Controls.Add(dgv);