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

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

行数の設定

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

以下のコードを使用して、WinForms FlexGrid の行数を設定します。

 // 行数を設定します
 c1FlexGrid1.Rows.Count = 15;
' 行数を設定します
c1FlexGrid1.Rows.Count = 15                    

行の追加

FlexGrid には、実行時に新しい行を追加するさまざまな方法があります。新しいレコードを追加するには、 Add メソッド(RowCollection クラス)または AddItem メソッド(C1FlexGrid クラス)のいずれかを使用します。非連結モードでは、Count プロパティの値をインクリメントして、新しい行を追加することもできます。これらの方法はすべて、グリッドの末尾に向かって行を追加します。特定の位置に行を挿入する方法については、「 行の挿入」を参照してください。また、Count プロパティを使用して連結グリッドに新しい行を追加すると、例外が生成されることに注意してください。

以下のコードに示すアプローチのいずれかを使用して、WinForms FlexGrid に行を追加します。

                                  
// 方法 1:
// Use the RowCollection.Add method to add row
 C1.Win.C1FlexGrid.Row r;
 r = c1FlexGrid1.Rows.Add();
         
// データを設定します
 r[1] = "New Row 2";

 // 方法 2: 
 // 行を追加してデータを設定するには、PASSWORDメソッドを使用します
  c1FlexGrid1.AddItem("" + "\t" + "New Row 1");
       
// 方法 3:
// RowCollection.Countプロパティを使用して行を追加します
 c1FlexGrid1.Rows.Count += 1;
       
// データを設定します
 c1FlexGrid1[c1FlexGrid1.Rows.Count - 1, 1] = "New Row 3";
 ' 方法 1:
 ' Use the RowCollection.Add method to add row
 Dim r As C1.Win.C1FlexGrid.Row
 r = c1FlexGrid1.Rows.Add()

 ' データを設定します
 r(1) = "New Row 2"

 ' 方法 2: 
 ' 行を追加してデータを設定するには、PASSWORDメソッドを使用します
 c1FlexGrid1.AddItem("" & vbTab & "New Row 1")

 ' 方法 3:
 ' RowCollection.Countプロパティを使用して行を追加します
 c1FlexGrid1.Rows.Count += 1

 ' データを設定します
 c1FlexGrid1(c1FlexGrid1.Rows.Count - 1, 1) = "New Row 3"    

行の削除

グリッドから特定の行を削除するには、RowCollection クラスの Remove メソッドを使用して、削除する行をそのパラメータとして指定します。RowCollection クラスには、行の範囲を 1 回の呼び出しで削除できる RemoveRange メソッドもあります。同様に、C1FlexGrid クラスの RemoveItem メソッドを使用して、特定の行を削除することもできます。非連結グリッドでは、Count プロパティの値を変更することで、行の数を減らすことができます。

次のコードは、さまざまな方法で WinForms FlexGrid から行を削除します。

// 方法 1:
// RowCollection.Removeメソッドを使用して2番目の行を削除します
c1FlexGrid1.Rows.Remove(2);

// 方法 2:
// RemoveItemメソッドを使用して2番目の行を削除します
c1FlexGrid1.RemoveItem(2);

// 方法 3:
// RemoveRangeメソッドを使用して、2番目から始まる3行を削除します
c1FlexGrid1.Rows.RemoveRange(2, 3);
       
// 方法 4:
// RowCollection.Countプロパティを使用して最後の行を削除します 
c1FlexGrid1.Rows.Count -= 1;                                        
 ' 方法 1:
 ' RowCollection.Removeメソッドを使用して2番目の行を削除します
 c1FlexGrid1.Rows.Remove(2)

 ' 方法 2:
 ' RemoveItemメソッドを使用して2番目の行を削除します
 c1FlexGrid1.RemoveItem(2)

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

 ' 方法 4:
 ' RowCollection.Countプロパティを使用して最後の行を削除します 
 c1FlexGrid1.Rows.Count -= 1    

行の挿入

FlexGrid の特定の位置に行を挿入するには、RowCollection クラスの Insert メソッドを使用し、このメソッドで行を挿入する位置を指定します。また、グリッドに複数の行を挿入するには、InsertRange メソッドを使用します。

以下のコードは、WinForms FlexGrid の特定の位置に行を挿入する方法を示しています。

 C1.Win.C1FlexGrid.Row r;
         
// 方法 1:
// Insertメソッドを使用して、2番目の位置に行を挿入します
 r = c1FlexGrid1.Rows.Insert(2);
 r[1] = "Inserted row";
  
// 方法 2:
// InsertRangeメソッドを使用して、2番目の位置に3つの行を追加します
// c1FlexGrid1.Rows.InsertRange(2, 3);                 
Dim r As C1.Win.C1FlexGrid.Row
                                        
 ' 方法 1:
 ' Insertメソッドを使用して、2番目の位置に行を挿入します
 r = c1FlexGrid1.Rows.Insert(2)
 r(1) = "Inserted row"

 ' 方法 2:
 ' InsertRangeメソッドを使用して、2番目の位置に3つの行を追加します
 ' c1FlexGrid1.Rows.InsertRange(2, 3)

データ型の設定

連結 FlexGrid の場合、各連結列のデータ型は、データに応じてデータソースから自動的に取得されます。ただし、非連結モードの場合は、Row クラスまたは Column クラスの DataType プロパティを指定して、行または列のデータ型をそれぞれ設定できます。行と列の両方にデータ型が設定されている場合は、列の設定の方が行の設定より優先されます。

WinForms FlexGrid の行のデータ型を設定するには、次のコードを使用します。

  C1.Win.C1FlexGrid.Row r;
  r = c1FlexGrid1.Rows.Add();
  r.DataType = typeof(int);
 Dim r As C1.Win.C1FlexGrid.Row
 r = c1FlexGrid1.Rows.Add()
 r.DataType = GetType(Integer)    

固定行の設定

固定行とは、編集不可のセルを含む行です。この行は、ユーザーがグリッドを下にスクロールしても、常にグリッドの最上部に表示されます。FlexGrid で固定行を設定するには、RowCollection クラスの Fixed プロパティを使用します。このプロパティは、固定する行の数を指定する整数値を受け取ります。

WinForms FlexGrid で固定行を設定するには、次のコードを使用します。

  // 3行を固定行として設定します
  c1FlexGrid1.Rows.Fixed = 3;                   
' 3行を固定行として設定します
c1FlexGrid1.Rows.Fixed = 3       

フリーズ行の設定

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

以下のコードを使用して、WinForms FlexGrid のフリーズ行を設定します。

  // 最初の2行をフリーズ行として設定します
  c1FlexGrid1.Rows.Frozen = 2;
' 最初の2行をフリーズ行として設定します
c1FlexGrid1.Rows.Frozen = 2        
関連トピック