※FeaturesのセットFeaturesはList<GridFeature>型です。GridFeatureの定義はDictionaryになっていますが、いずれもロードオンデマンド機能を使用しない場合にView(cshtml)の..Featuresで定義する項目たちです。使用する機能のClassを用意して順次Featuresに追加します。1;....割愛...Features.Add(fp);こんな感じです。Featuresで使用するclassには以下のものがあります。(全部ではありません。一部です)機能名の頭にGridをつけたらclass名になるような命名ですね。etc尚、(※)がついているclassについては、ColumnSettingsのListをもっていますので、Columnsのセット時同様、カラム毎の情報をセットする必要があります(ある場合があります)。以上、親階層のセット項目でした。階層型のGridでない場合は以上で終わりです。3.子階層の定義を登録します。セット次に階層型Gridの場合の子階層の情報をColumnLayoutsにセットします。ColumnLayoutsはList<IGridModel>型になっています。=>{}で定義する項目たちです。親階層で各項目にセットしたのと同様に子階層の情報についてGridColumnLayoutModelを作成し値セットしたうえでColumnLayoutsにaddといった手順でいけます。子階層の下に孫階層がある場合はm子階層のColumnLayoutsに孫階層の情報をセットすることになります。今までの手順で、igGrideの定義が準備できました。次に、データの受け渡し部分です。igGrideの定義が渡されます。その定義内の「DataSourceUrl」で指定したアクションが呼び出されます。このアクションで親階層用のデータを渡します。前述の例では「DataSourceUrl」にアクション名"GetListParentData"と引数"Joken1"をセットしていました。対応するアクションの記述はこんな感じです。JsonRequestBehavior.AllowGet);//ListをJsonにして返す}次に、子階層データの受け渡し部分。以下のようなかんじになります。//ListをJsonにして返す}引数"path"には"名前:値"の形式でセットされます。名前は親階層の[PrimaryKey]にセットした列名。値には展開した親行の[PrimaryKey]の値。引数"layout"には子階層の[key]にセットした値がセットされてきます。これら引数の情報より、子階層のデータを取得して返してあげます。以上で、ロードオンデマンドを使用したigGridの出来上がりです。作成する部分にちょっと手間がかかりますが、汎用的に使い回しできるclassに仕上げておきたいですね。そこまでできたら、cshtmlのgridoptionを直接記述するよりも、手軽で汎用性も高く保守面でも有利になるように私は思うのですが、いかかでしょうか?今回は以上です。