FlexGrid for WPF
同じ値を持つセルをマージする
基本操作 > マージ > 同じ値を持つセルをマージする

グリッドのAllowMergingプロパティをC1.WPF.FlexGrid.AllowMerging.Cells に設定して、特定の行および列のAllowMergingプロパティをTrueに設定することで、固定セル・通常セルをマージして表示できます。

たとえば、次の例では、列2で2行目、5行目と8行目で同じ値を持つセルをマージして表示します。また、ここで行8と列8のマージが同時に行われたので、列のマージが優先されることに注目してください。

【実行例】



サンプルコードは次のようになります。

コードのコピー
_flex.Rows.Frozen = 2
_flex.AllowMerging = C1.WPF.FlexGrid.AllowMerging.Cells
_flex.Columns(2).AllowMerging = True
_flex.Rows(5).AllowMerging = True
_flex.Rows(8).AllowMerging = True
' データを設定します
_flex(0, 2) = "行のマージ"
_flex(1, 2) = "行のマージ"
_flex(2, 2) = "行のマージ"
_flex(3, 2) = "行のマージ"
_flex(5, 3) = "列のマージ"
_flex(5, 4) = "列のマージ"
_flex(8, 2) = "列のマージが優先"
_flex(8, 3) = "列のマージが優先"
コードのコピー
_flex.Rows.Frozen = 2;
_flex.AllowMerging = C1.WPF.FlexGrid.AllowMerging.Cells;
_flex.Columns[2].AllowMerging = true;
_flex.Rows[5].AllowMerging = true;
_flex.Rows[8].AllowMerging = true;
// データを設定します
_flex[0, 2] = "行のマージ";
_flex[1, 2] = "行のマージ";
_flex[2, 2] = "行のマージ";
_flex[3, 2] = "行のマージ";
_flex[5, 3] = "列のマージ";
_flex[5, 4] = "列のマージ";
_flex[8, 2] = "列のマージが優先";
_flex[8, 3] = "列のマージが優先";  

注意:

  • 固定セルと通常セルはマージされません。
  • 自動マージの場合、特定の位置でのみマージする(同一データをマージしない)といった動作はできません。この場合は、自動マージのカスタマイズや制限付きマージ、カスタムマージを検討してください。
  • 行と列のマージが同時に行われた場合、列のマージが優先されます。
  • カスタムマージと自動マージを同時に実装することはできません。