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

注意

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

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

テーブルと列をプログラムによって DataGrid に追加するには

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

    注意事項

    列のスタイルをプログラムで指定する場合は、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);
    

関連項目