以下の表で、igHierarchicalGrid
™ コントロールの既知の問題と制限を簡単に説明します。いくつかの問題については、この概要表の後に、既知の問題点に関する詳しい説明と、考えられる回避策を示します。
![]() |
回避策 |
![]() |
既知の回避策はありません |
![]() |
修正予定です |
問題 | 説明 | 状態 |
---|---|---|
Android 4.* デバイスで、スクリーン タップが誤って解釈される | Android 4.* を使用したタッチ デバイスでは、階層グリッドで Group By モーダル ダイアログのドロップダウンのタップは、多くの場合モーダル ダイアログの背後のグリッド セルに作用します。 | ![]() |
階層グリッドにおいて特定の順序で機能を参照した場合に発生するレンダリング問題 | Group By 機能を機能リストに追加した後に行セレクターを追加した場合、igHierarchicalGrid の子のレイアウトが正しく描画されないことがあります。 |
![]() |
プライマリ キー値の制限 | igHierarchicalGrid は親レイアウトのプライマリー キー値を使用して、固有の id 属性を持つ子レイアウトの <div> 要素を作成します。HTML5 仕様のとおり、id 属性値でスペース文字を使用できません。プライマリー キーの値に無効な文字が含まれる場合は、jQuery ID セレクターで DIV 要素を選択することはできません。結果として子グリッドの機能は正しく操作しない可能性があります。例: 子グリッドでフィルター ドロップダウンを開くと、例外が発生されます。 |
![]() |
MVC で自己参照が機能しない | igHierarchicalGrid を自己参照データにバインドしたい場合、シリアル化制限のために、MVC パターンによりバインドすることができません。 |
![]() |
チェーンでロード オン デマンドが機能しない | MVC プロジェクトのビュー ページで、ロード オン デマンドを有効にすることはできません。 | ![]() |
レイアウトでプライマリー キーを使用せずにロード オン デマンドを実行すると、例外がスローされる | ロード オン デマンド機能を有効にし、すべての子レイアウトに対してプライマリー キーを定義しなかった場合、例外がスローされます。 | ![]() |
子レイアウトの一部の列が表示されない、または切り取られる | igHierarchicalGrid で幅が定義されず、また子レイアウトに列幅が width グリッドを越える列がある場合、子の列の一部は切り取りまたは非表示になります。 |
![]() |
機能を複数回定義できない | JavaScript の場合: igGrid と igHierarchicalGrid のいずれの場合も、1 つの機能を複数回、定義するとエラーがスローされます。MVC の場合: igGrid と igHierarchicalGrid のいずれの場合も、MVC ラッパーで機能を複数回定義すると、最後の定義のみが取り入れられます。 |
![]() |
XML へのクライアント側のバインディング | XML へのバインディングは再帰的スキーマのみサポートします。 | ![]() |
ロード オン デマンドが false の場合、永続化は子レイアウトに対して機能しない | ロード オン デマンドが false の場合、フィルタリング、並べ替えまたは GroupBy は子レイアウトに対して永続化されません。このシナリオでは、これらの機能に対してpersist オプションが自動的に false に設定されます。 | ![]() |
id 属性は、DOM コントロール プレースホルダーで必須 | id 属性は、グリッドが初期化される DOM 要素に設定する必要があります。グリッドは、jQuery セレクターを内部で使用して選択を高速化します。 | ![]() |
スペースを含む列のキーはサポートされない | 列のキーは、一部の DOM 要素の ID の生成に使用されます。HTML 5 仕様により、HTML id 属性にスペースを入れることはできません。 | ![]() |
initialExpandDepth と仮想化の使用がサポートされない | 仮想化が有効な場合、すべての取得された行は縮小状態です。initialExpandDepth の設定は無視されます。 | ![]() |
問題 | 説明 | 状態 |
---|---|---|
階層グリッドにおけるリモート グループ化の制限事項 | リモート グループ化では、複数のレイアウト (またはルート グリッド) の列のグループ化は機能しません。 | ![]() |
ロード オン デマンドでのリモート グループ化が不正になる | グリッド全体のロード オン デマンドでリモートの Group By を有効にした場合、オン デマンドでロードしているデータを返すアクションを修正しない限り、グループは不正になります。 | ![]() |
グループ化機能で列設定を定義し、同時に継承を有効にすると、例外がスローされる | グループ化機能を有効にし、その中で列設定を定義し継承を有効にすると、ページ例外がスローされます。 | ![]() |
異なる子レイアウトからのリモート グループ化の制限 | ロード オン デマンドが無効な場合は、リモート Group By を使用して異なる子レイアウトから列をグループ化すると、子の DataSourceUrl ではなく親の DataSourceUrl が呼び出されます。 |
![]() |
問題 | 説明 | 状態 |
---|---|---|
行セレクターの動作は、一度に 1 つのレイアウトに限られる | 行セレクターの機能のチェックボックスで選択されたレイアウトは、別のレイアウトのチェックボックスがチェックされると選択が解除されます。 | ![]() |
問題 | 説明 | 状態 |
---|---|---|
ツールチップのオプションが子およびルートの定義で異なる場合、ツールチップは子レイアウトで表示されません。 | 階層グリッドのすべてのツールチップ インスタンスで同じ DOM 要素を使用するようになったため、このシナリオはサポートされません。 | ![]() |
問題 | 説明 | 状態 |
---|---|---|
高さが低すぎる場合、子レイアウトで [OK]/[キャンセル] ボタンの一部が表示されません。 | 特定の構成およびユースケースで子レイアウトの高さが低すぎる場合、表示要素の範囲外にフローティング要素は配置できません。 | ![]() |
問題 | 説明 | 回避方法 |
---|---|---|
Android 4. デバイスで、スクリーン タップが誤って解釈される | Android 4. を使用したタッチ デバイスでは、階層グリッドで Group By モーダル ダイアログのドロップダウンのタップは、多くの場合モーダル ダイアログの背後のグリッド セルに作用します。 |
modalDialogDropDownWidth と modalDialogDropDownAreaWidth プロパティの値を変更して、モーダル ダイアログのドロップダウンにレイアウト ツリー全体が表示されるようにするか、もしくは上記のプロパティ値を null に設定しておくという方法が考えられます。
|
子レイアウトの <div> 要素は、jQuery ID セレクターで選択することはできません。
|
更新機能が有効かどうかに基づいて、2 つの回避方法があります。 | 更新機能が無効の場合:primaryKey オプションをグリッドの構成から削除します。igHierarchicalGrid は、データ行のプライマリ キーを自動生成します。更新機能が有効な場合:igHierarchicalGrid データ ソースの各レイアウトにフィールドを追加し、それをプライマリ キーとして使用します。連番を使用できます。 |
階層グリッドにおいて特定の順序で機能を追加した場合に発生するレンダリング問題 | igHierarchicalGrid では、機能リストに行セレクター機能を追加する前にグループ化機能を入れておいた場合、子レイアウトにレンダリング問題 (列の欠落やずれ) が発生することがあります。 | この問題を回避するには、配列にグループ化を追加する前に行セレクターを追加します。 |
チェーンでロード オン デマンドが機能しない | MVC プロジェクトのビュー ページで、ロード オン デマンドを有効にすることはできません。 | Controller で階層モデルを作成するか、モデル クラスを作成し、それを View ページに渡す必要があります。 |
レイアウトでプライマリー キーを使用せずにロード オン デマンドを実行すると、例外がスローされる | ロード オン デマンド機能を有効にし、すべての子レイアウトに対してプライマリー キーを定義しなかった場合、例外がスローされます。これは、レイアウトのプライマリ キーがないと、グリッドがデータのロード オン デマンド要求を行うことができないためです。 | 常に、すべてのレイアウトのプライマリ キーと外部キーを定義しておくことをお勧めします。 |
問題 | 説明 | 回避方法 |
---|---|---|
階層グリッドにおけるリモート グループ化の制限事項 | リモート グループ化では、複数のレイアウト (またはルート グリッド) の列のグループ化は機能しません。 | ローカル グループ化の使用:問題を回避します。 リモート グループ化の使用:リモート グループ化を使用する場合は、1 つのレイアウト (またはルート グリッド) にある列のみをグループ化してください。 |
ロード オン デマンドでのリモート グループ化が不正になる | グリッド全体のロード オン デマンドでリモートの Group By を有効にした場合、オン デマンドでロードしているデータを返すアクションを修正しない限り、グループは不正になります。 | オン デマンドで要求されるデータを返すアクション メソッドを実装する場合、返される結果のタイプを、GridModel ではなく GridColumnLayoutModel に設定します。 以下のコードはこの設定を示したものです。 C# の場合: public JsonResult BindChildLayout(string path, string layout) { GridColumnLayoutModel childLayout = new GridColumnLayoutModel(); … return childLayout.GetData(path, layout); } |
グループ化機能で列設定を定義し、同時に継承を有効にすると、例外がスローされる | グループ化機能が列設定を定義し、同時に継承を有効にすると、例外がスローされるこの問題は、MVC View ページでチェーン化アプローチを用いるグリッドを持つ MVC ソリューション内で発生します。グループ化機能を有効にし、その中で列設定を定義し継承を有効にすると、ページ例外がスローされます。 | 列設定を定義し、グループ化機能で継承を有効にする代わりに、グループ化機能で継承を無効にしてから各子レイアウト内で同じグループ化設定を手動で定義します。 |
異なる子レイアウトからのリモート グループ化の制限 | ロード オン デマンドが false の場合、子の DataSourceUrl は使用されません。 | ロード オン デマンド機能を有効にします。 |
問題 | 説明 | 回避方法 |
---|---|---|
高さが低すぎる場合、子レイアウトで [OK]/[キャンセル] ボタンの一部が表示されません。 | 特定の構成およびユースケースで子レイアウトの高さが低すぎる場合、表示要素の範囲外にフローティング要素は配置できません。 |
すべての子レイアウトに最小の高さを設定するために CSS ルールを使用します。
CSS の場合: [id$=_child_container] { min-height: 100px; } |
このトピックの追加情報については、以下のトピックも合わせてご参照ください。
igHierarchicalGrid
コントロールのグループ化機能を有効にして構成する方法を示します。igHierarchicalGrid
に読み込む 2 とおりの方法を示します。igHierarchicalGrid
コントロールの行セレクター機能を構成する方法を説明します。以下の資料 (Infragistics のコンテンツ ファミリー以外でもご利用いただけます) は、このトピックに関連する追加情報を提供します。
オンラインで表示: GitHub