FlexGrid for WinForms
基本的な操作
> 基本的な操作

このトピックでは、列で実行可能なさまざまな基本操作について説明します。

列数の設定

グリッドがデータソースに連結されている場合、列の数はデータソースにあるフィールドの数によって決まります。ただし、非連結モードの場合は、ColumnCollection クラスの Count プロパティに任意の値を設定して、グリッドに表示する列の数を指定できます。

非連結モードで WinForms FlexGrid に追加する列の数を設定するには、次のコードを使用します。

 // 列数を設定します
 c1FlexGrid1.Cols.Count = 4;
' 列数を設定します
c1FlexGrid1.Cols.Count = 4        

列の追加

FlexGrid で ColumnCollection クラスを使用して新しい列を追加する方法は 2 つあります。新しい列を追加するには、Add メソッドを使用するか、このクラスにある Count プロパティの値を増やします。これらのメソッドを使用して連結グリッドに新しい列を追加した場合、それは単なる非連結列として追加されます。

次に、列を WinForms FlexGrid に追加する 2 つの方法を示します。

    // 方法 1: 
    // 列コレクションのAddメソッドを使用します
    C1.Win.C1FlexGrid.Column c;
    c = c1FlexGrid1.Cols.Add();
    c.Caption = "New Column";

    // 方法 2:
    // 列コレクションのCountプロパティを変更します
    c1FlexGrid1.Cols.Count += 1;
    c1FlexGrid1.Cols[c1FlexGrid1.Cols.Count - 1].Caption = "New Column";
    ' 方法 1: 
    ' 列コレクションのAddメソッドを使用します
    Dim c As C1.Win.C1FlexGrid.Column
    c = c1FlexGrid1.Cols.Add()
    c.Caption = "New Column"

    ' 方法 2:
    ' 列コレクションのCountプロパティを変更します
    c1FlexGrid1.Cols.Count += 1
    c1FlexGrid1.Cols(c1FlexGrid1.Cols.Count - 1).Caption = "New Column"         

列の削除

グリッドから特定の列を削除するには、ColumnCollection クラスの Remove メソッドを使用して、削除する列をそのパラメータとして指定します。非連結グリッドでは、Count プロパティの値を変更することで、列の数を減らすこともできます。こうすると、列コレクションの最後から列が削除されます。ColumnCollection クラスには、列の範囲を削除できる RemoveRange メソッドもあります。

次のコードスニペットは、WinForms FlexGrid から列を削除する 3 つの方法をすべて示しています。

   // 方法 1:
   // 列コレクションのRemoveメソッドを使用して2番目の列を削除します       
   c1FlexGrid1.Cols.Remove(2);

   // 方法 2:
   // Countプロパティを変更して、最後の列を削除します
   c1FlexGrid1.Cols.Count -= 1;

   // 方法 3:
   // RemoveRangeメソッドを使用して、2番目から始まる4つの列を削除します 
   c1FlexGrid1.Cols.RemoveRange(2, 4);                                      
    ' 方法 1:
    ' 列コレクションのRemoveメソッドを使用して2番目の列を削除します       
    c1FlexGrid1.Cols.Remove(2)

    ' 方法 2:
    ' Countプロパティを変更して、最後の列を削除します
    c1FlexGrid1.Cols.Count -= 1

    ' 方法 3:
    ' RemoveRangeメソッドを使用して、2番目から始まる4つの列を削除します 
    c1FlexGrid1.Cols.RemoveRange(2, 4)       

列の挿入

FlexGrid の特定の位置に列を挿入するには、ColumnCollection クラスの Insert メソッドを使用し、このメソッドで列を挿入する位置を指定します。また、グリッドに複数の列を挿入するには、InsertRange メソッドを使用します。グリッドが連結グリッドの場合でも、これらのメソッドでは非連結列のみが追加されます。

列を WinForms FlexGrid の特定の位置に挿入するには、次のいずれかの方法を使用します。

    C1.Win.C1FlexGrid.Column c;

   // 方法 1:
   // Insertメソッドを使用して2番目の位置に列を挿入します
   c = c1FlexGrid1.Cols.Insert(2);
   c.Caption = "Inserted Column";

   // 方法 2:
   // InsertRangeメソッドを使用して2番目の位置に3つの列を挿入します
   // c1FlexGrid1.Cols.InsertRange(2, 3);                            
 Dim c As C1.Win.C1FlexGrid.Column

' 方法 1:
' Insertメソッドを使用して2番目の位置に列を挿入します
 c = c1FlexGrid1.Cols.Insert(2)
 c.Caption = "Inserted Column"
                                        
' 方法 2:
' InsertRangeメソッドを使用して2番目の位置に3つの列を挿入します
' c1FlexGrid1.Cols.InsertRange(2, 3)
                                        

データ型の設定

連結 FlexGrid の場合、各連結列のデータ型は、データに応じてデータソースから自動的に取得されます。ただし、非連結モードの場合は、Column クラスの DataType プロパティを指定して、列のデータ型を設定できます。また、列タスクメニューを使用して、設計時に DataType プロパティを設定することもできます。タスクメニューの詳細については、「タスクメニュー」を参照してください。FlexGrid の列に特定のデータ型が設定されている場合、セルは、そのデータ型が受け入れ可能なキー入力のみを受け付けます。たとえば、数値型のセルにアルファベットを入力することはできません。

次のコードに示すように、WinForms FlexGrid の非連結列のデータ型を設定します。

 // 最初の列のデータ型を設定します
 c1FlexGrid1.Cols[1].DataType = typeof(int);                     
' 最初の列のデータ型を設定します
c1FlexGrid1.Cols(1).DataType = GetType(Integer)
                                

固定列の設定

固定列は、編集不可のセルを含む列です。ユーザーがグリッドを水平方向にスクロールしても、固定列はグリッドの左側に常に表示されます。FlexGrid で固定列を設定するには、ColumnCollection クラスの Fixed プロパティを使用します。このプロパティは、固定する列の数を指定する整数値を受け取ります。

WinForms FlexGrid で 1 つの列を固定列として設定するには、次のコードを使用します。

// 1つの列を固定列として設定します
c1FlexGrid1.Cols.Fixed = 1;                            
' 1つの列を固定列として設定します
c1FlexGrid1.Cols.Fixed = 1          

フリーズ列の設定

フリーズ列は、固定列と同様にスクロールできません。ただし、ユーザーはこの列を編集できます。FlexGrid でフリーズ列を設定するには、ColumnCollection クラスにある Frozen プロパティを使用します。

WinForms FlexGrid でフリーズ列を設定するには、次のコードを使用します。

// 最初の4列を静止として設定します
c1FlexGrid1.Cols.Frozen = 4;
' 最初の4列を静止として設定します
c1FlexGrid1.Cols.Frozen = 4       
関連トピック