動的にロードされた行の行選択
ツリーグリッドでクライアントにまだロードされていない行を展開して選択するには、IDFieldName プロパティによって指定される 1 つ以上の ID 列をインフォテーブルに作成し、選択する行への行 ID の完全修飾パスを含めます。デフォルトでは、:; 文字の組み合わせがパスセパレータとして使用されますが、Mashup Builder または JSON コンフィギュレーションファイルで IDPathSeparator プロパティを設定することでこれを変更できます。
たとえば、ID ddd の行を選択するには、以下の ID 値を含む列をインフォテーブルに作成します。
//aaa:;bbb:;ccc:;ddd.
完全修飾 ID パスを含む選択行の出力インフォテーブルをツリーグリッドで生成するには、IncludeRowExpansionParents プロパティを true に設定します。true に設定しなかった場合、単一リーフ ID だけが使用されます。選択した行のインフォテーブルがグリッドに送信され、リストされている行がグリッドにまだロードされていない場合、ツリーグリッドはバインドされているデータサービスに対してリクエストを自動的に生成します。IncludeRowExpansionParents プロパティが設定されている場合、次のパラメータが含まれます。
{id: 'aaa', leafId: 'ddd', maxLevels: 25}
グリッドは、ID ddd の行への展開されたパスを完全に作成するため、ID aaa からそのリーフノード ddd までのすべての行をリクエストしています。
JSON コンフィギュレーションでは、以下を追加します。
"treeSettings":
{ // Required for Tree Grid.
“IncludeRowExpansionParents”:true, //{boolean} Fetch parent rows of expanded or selected rows that are not pre-loaded.
"IDPathSeparator": ':;' // {string} The ID path separator that is used in ID paths for the selection of non-loaded rows.
}
この設定の詳細については、GridAdvancedExampleEntities-V4.0.xml で RowSelection の例を参照してください。この例では、左側のグリッドから右側のツリーグリッドにフルパス行選択のインフォテーブルをバインドしています。このため、左側のグリッドは、リーフ ID だけでなく、完全修飾パスを含む選択行のインフォテーブルを生成する必要があります。このためには、IncludeRowExpansionParents プロパティを設定しなければなりません。または、選択する行への完全修飾パスを含むインフォテーブルを生成するサービスを作成できます。パスセパレータ文字は IDPathSeparator プロパティによって設定可能です。デフォルトでは :; が使用されますが、変更可能です。行選択の例では、両方のツリーグリッドで同じ設定に変更しなければなりません。