アプリ版:「スタンプのみでお礼する」機能のリリースについて

環境はVS2005です。

以下のように読込んだデータをdatatblに格納し、
DataGridにバインドしたいのですが、コンパイルは通りますが、
エラーとなってしまいます。
どのように解決すればよいのでしょうか?

DataTable tbl = new DataTable();
while (sqlDataReader.Read())
{
  tbl.Rows.Add(sqlDataReader["banner_id"].ToString());
 tbl.Rows.Add(sqlDataReader["Adv"].ToString());
}
sqlDataReader.Close();
this.DataGridView.DataSource = tbl;
this.DataGridView.DataBind();

エラーメッセージ:入力配列がこのテーブルの列数より長い値です

すみませんが、よろしくお願い致します。

A 回答 (1件)

RowsコレクションのAddメソッドならば DataRowを与えるか


Rowsの列データに見合う配列を与えないといけないでしょう

DataRow row;
while (sqlDataReader.Read())
{
  row = tbl.NewRow();
  row[列名1] = sqlDataReader["banner_id"].ToString();
  row[列名2] = sqlDataReader["Adv"].ToString();
  tbl.Rows.Add(row);
}
といった具合でしょう
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています