22

Windows アプリケーションを作成しました。これでは、データセットに複数のテーブルがあり、それを単一の DataGridView にバインドしたいと考えています。誰でも私を助けることができますか?

4

4 に答える 4

44

以下は、データセットの1つのテーブルを示します

DataGridView1.AutoGenerateColumns = true;
DataGridView1.DataSource = ds; // dataset
DataGridView1.DataMember = "TableName"; // table name you need to show

複数のテーブルを表示する場合は、すべてのテーブルから1つのデータテーブルまたはカスタムオブジェクトコレクションを作成する必要があります。

同じテーブルスキーマを持つ2つのテーブルの場合

dtAll = dtOne.Copy(); // dtOne = ds.Tables[0]
dtAll.Merge(dtTwo); // dtTwo = dtOne = ds.Tables[1]

DataGridView1.AutoGenerateColumns = true;
DataGridView1.DataSource = dtAll ; // datatable

すべてのテーブルをモード化するサンプルコード

DataTable dtAll = ds.Tables[0].Copy();
for (var i = 1; i < ds.Tables.Count; i++)
{
     dtAll.Merge(ds.Tables[i]);
}
DataGridView1.AutoGenerateColumns = true;
DataGridView1.DataSource = dtAll ;
于 2012-06-19T11:13:15.653 に答える
6

このように使用します:-

gridview1.DataSource = ds.Tables[0]; <-- Use index or your table name which you want to bind
gridview1.DataBind();

役に立てば幸いです!!

于 2012-06-19T11:10:11.490 に答える
0

次のように、データセットをグリッドに設定できます。

// データセット オブジェクトが ds であると仮定

datagridview1.datasource= ds;
datagridview1.datamember= tablename.ToString();

tablename は、グリッドに表示するテーブルの名前です。

うまくいけば、それは役に立ちます。

ブラジル

于 2012-06-19T11:08:31.707 に答える