GridView でセルを結合する方法の補足
前回の記事 (GridView でセルを結合する方法) の補足です。 *1
セルの結合に使用する GridViewJoin クラスの使用法を説明します。基本的には、ソースコードのコメントで書いている内容と同一です。
まず、セルの結合を考慮せずに GridView クラスを使用してデータを表示します。 GridView にデータを表示することができたら、 GridView.DataBind() の後に以下の内容を記述します。 ObjectDataSource などを利用してデータ結合を行っている場合は、 Page_Load() 内 (ポストバックでない場合) に以下のコードを記述します。
GridViewJoin joiner = new GridViewJoin(対象の GridView, GridView 内のキーとなる列番号); joiner.AddRelationToKey(キーにひも付いて結合される列番号); joiner.AddRelationToKey(キーにひも付いて結合される列番号); // 同時に結合したい列の数だけ AddRelationToKey() を繰り返す // joiner.AddRelationToKey(キーにひも付いて結合される列番号); joiner.Apply();
以上で、 GridView のセルを結合することができます。このとき、結合するかしないかの判断は、「GridView 内のキーとなる列番号」の上下の行が同じかで行われ、列が結合されるとき AddRelationToKey() で指定した列も同時に結合されます。
今後は需要により、 GridView にスクロールバーをつけたり、ヘッダ固定をしたりする方法を解説するかもしれません。