方法 : Windows フォーム DataGrid コントロールに表示されるデータを実行時に変更する
更新 : 2007 年 11 月
メモ : |
---|
DataGridView コントロールは、DataGrid コントロールに代わると共に追加の機能を提供します。ただし、DataGrid コントロールは、下位互換性を保つ目的および将来使用する目的で保持されます。詳細については、「Windows フォームの DataGridView コントロールと DataGrid コントロールの違いについて」を参照してください。 |
デザイン時の機能を使用して Windows フォーム DataGrid を作成した後で、グリッドの DataSet オブジェクトの要素を実行時に動的に変更できます。これには、テーブルの個別の値を変更する場合と、DataGrid コントロールに連結するデータ ソースを変更する場合があります。個別の値の変更は、DataGrid コントロールではなく、DataSet オブジェクトによって行います。
プログラムでデータを変更するには
データを変更する DataSet オブジェクトのテーブル、および変更する行とフィールドを指定し、セルを新しい値に設定します。
メモ : DataSet の最初のテーブルまたはテーブルの最初の行を指定するには、0 を使用します。
次の例は、 Button1 をクリックしてデータセットの最初のテーブルの最初の行の 2 番目のエントリを変更する方法を示しています。DataSet (ds) とテーブル (0 and 1) は既に作成済みです。
Protected Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ds.tables(0).rows(0)(1) = "NewEntry" End Sub
private void button1_Click(object sender, System.EventArgs e) { ds.Tables[0].Rows[0][1]="NewEntry"; }
private: void button1_Click(System::Object^ sender, System::EventArgs^ e) { dataSet1->Tables[0]->Rows[0][1] = "NewEntry"; }
(Visual C#、Visual C++) フォームのコンストラクタに次のコードを挿入してイベント ハンドラを登録します。
this.button1.Click += new System.EventHandler(this.button1_Click);
this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);
実行時に、SetDataBinding メソッドを使用して、DataGrid コントロールを異なるデータ ソースに連結できます。たとえば、複数の ADO.NET データ コントロールをそれぞれ異なるデータベースに接続できます。
プログラムでデータ ソースを変更するには
SetDataBinding メソッドに、連結するデータ ソースおよびテーブルの名前を設定します。
SetDataBinding メソッドを使用して、データ ソースを Pubs データベースの Authors テーブルに接続されている ADO.NET データ コントロール (adoPubsAuthors) に変更する例を次に示します。
Private Sub ResetSource() DataGrid1.SetDataBinding(adoPubsAuthors, "Authors") End Sub
private void ResetSource() { DataGrid1.SetDataBinding(adoPubsAuthors, "Authors"); }
private: void ResetSource() { dataGrid1->SetDataBinding(adoPubsAuthors, "Authors"); }
参照
処理手順
方法 : Windows フォーム DataGrid コントロールの列を削除するまたは非表示にする
方法 : Windows フォーム DataGrid コントロールにテーブルと列を追加する
方法 : データ ソースに Windows フォーム DataGrid コントロールをバインドする