方法 : Windows フォーム DataGrid コントロールにテーブルと列を追加する

更新 : 2007 年 11 月

dafyysz5.alert_note(ja-jp,VS.90).gifメモ :

DataGridView コントロールは、DataGrid コントロールに代わると共に追加の機能を提供します。ただし、DataGrid コントロールは、下位互換性を保つ目的および将来使用する目的で保持されます。詳細については、「Windows フォームの DataGridView コントロールと DataGrid コントロールの違いについて」を参照してください。

Windows フォームの DataGrid コントロールのデータをテーブルおよび列に表示するには、DataGridTableStyle オブジェクトを作成して GridTableStylesCollection オブジェクトに追加します。GridTableStylesCollection オブジェクトには、DataGrid コントロールの TableStyles プロパティを使用してアクセスできます。各テーブル スタイルは、DataGridTableStyle オブジェクトの MappingName プロパティで指定されたデータ テーブルの内容を表示します。既定では、列スタイルが指定されていないテーブル スタイルには、そのデータ テーブル内のすべての列が表示されます。GridColumnStylesCollection オブジェクトに DataGridColumnStyle オブジェクトを追加することにより、テーブルから表示する列を制限できます。GridColumnStylesCollection オブジェクトには、各 DataGridTableStyle オブジェクトの GridColumnStyles プロパティを通してアクセスできます。

プログラムで DataGrid にテーブルおよび列を追加するには

  1. データをテーブルに表示するには、まず DataGrid コントロールをデータセットにバインドする必要があります。詳細については、「方法 : データ ソースに Windows フォーム DataGrid コントロールをバインドする」を参照してください。

    dafyysz5.alert_caution(ja-jp,VS.90).gif注意 :

    列スタイルをプログラムで指定する場合は、DataGridTableStyle オブジェクトを GridTableStylesCollection オブジェクトに追加する前に、必ず DataGridColumnStyle オブジェクトを作成して GridColumnStylesCollection オブジェクトに追加します。空の DataGridTableStyle オブジェクトをコレクションに追加すると、DataGridColumnStyle オブジェクトが自動的に生成されます。その結果、重複した MappingName 値で新しい DataGridColumnStyle オブジェクトを GridColumnStylesCollection オブジェクトに追加しようとすると、例外が発生します。

  2. 新しいテーブル スタイルを宣言し、そのマップ名を設定します。

    Dim ts1 As New DataGridTableStyle()
    ts1.MappingName = "Customers"
    
    DataGridTableStyle ts1 = new DataGridTableStyle();
    ts1.MappingName = "Customers";
    
    DataGridTableStyle* ts1 = new DataGridTableStyle();
    ts1->MappingName = S"Customers";
    
  3. 新しい列スタイルを宣言し、そのマップ名とその他のプロパティを設定します。

    Dim myDataCol As New DataGridBoolColumn()
    myDataCol.HeaderText = "My New Column"
    myDataCol.MappingName = "Current"
    
    DataGridBoolColumn myDataCol = new DataGridBoolColumn();
    myDataCol.HeaderText = "My New Column";
    myDataCol.MappingName = "Current";
    
    DataGridBoolColumn^ myDataCol = gcnew DataGridBoolColumn();
    myDataCol->HeaderText = "My New Column";
    myDataCol->MappingName = "Current";
    
  4. GridColumnStylesCollection オブジェクトの Add メソッドを呼び出して、列をテーブル スタイルに追加します。

    ts1.GridColumnStyles.Add(myDataCol)
    
    ts1.GridColumnStyles.Add(myDataCol);
    
    ts1->GridColumnStyles->Add(myDataCol);
    
  5. GridTableStylesCollection オブジェクトの Add メソッドを呼び出して、テーブル スタイルをデータ グリッドに追加します。

    DataGrid1.TableStyles.Add(ts1)
    
    dataGrid1.TableStyles.Add(ts1);
    
    dataGrid1->TableStyles->Add(ts1);
    

参照

処理手順

方法 : Windows フォーム DataGrid コントロールの列を削除するまたは非表示にする

その他の技術情報

DataGrid コントロール (Windows フォーム)