5

に行を追加したいdatagridview。私は多くの可能性を試しましたが、何も表示されません。最善の解決策は、データテーブルを作成し、それをグリッドビューのデータソースとして使用することだと思います。私は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

4 に答える 4

11

私はあなたのコードに2つの間違いを見つけました:

  1. dr["Color "] = "blue";列の色はスペースを入れないでください dr["Color"] = "blue";
  2. テーブルに行を追加するのを忘れました

    table.Rows.Add(dr);

あなたはこれを試すことができます

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();
}
于 2013-04-12T07:35:04.660 に答える
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");

お役に立てれば :)

于 2013-04-12T07:33:30.350 に答える
3

さまざまな方法がありますが、さまざまな条件があります。

次のコードは、文字列配列の場合の gridview.add メソッドを示しています。

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

それは、適用したいコンテキストと状況によって異なります。

于 2013-04-12T07:05:54.163 に答える
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);
于 2013-04-12T07:19:50.370 に答える