5.20193.637
FlexGridDetailProvider Wijmo API クラス

FlexGridDetailProvider クラス

FlexGrid コントロールの詳細行を実装します。

FlexGrid コントロールに詳細行を追加するには、 FlexGridDetailProvider のインスタンスを作成し、詳細セルに FlexGridDetailProvider 表示される要素を作成する関数を createDetailCell プロパティで設定します。

次に例を示します。

// カテゴリを表示するためのFlexGridを作成します
var gridCat = new wijmo.grid.FlexGrid('#gridCat');
gridCat.itemsSource = getCategories();
// カテゴリごとの製品を表示する詳細行を追加します
var detailProvider = new wijmo.grid.detail.FlexGridDetailProvider(gridCat);
detailProvider.createDetailCell = function (row) {
  var cell = document.createElement('div');
  var gridProducts = new wijmo.grid.FlexGrid(cell);
  gridProducts.itemsSource = getProducts(row.dataItem.CategoryID);
  return cell;
}

FlexGridDetailProvider には、詳細行をいつ表示するかを決定する detailVisibilityMode プロパティがあります。このプロパティのデフォルト値は ExpandSingleです。これは、行ヘッダーに折りたたみ/展開アイコン を追加します。

次の例では、FlexGridDetailProvider を使用して FlexGrid の行にさまざまなタイプの詳細を追加する方法を示しています。

Example

階層

コンストラクタ

constructor

プロパティ

createDetailCell

createDetailCell: ICreateDetailCell

詳細セルを作成するためのコールバック関数を取得または設定します。

このコールバック関数は、パラメータとしてRow を受け取り、 行詳細を表すHTML要素を返します。 次に例を示します。

// 指定された行の詳細セルを作成します
dp.createDetailCell = function (row) {
  var cell = document.createElement('div');
  var detailGrid = new wijmo.grid.FlexGrid(cell, {
    itemsSource: getProducts(row.dataItem.CategoryID),
    headersVisibility: wijmo.grid.HeadersVisibility.Column
  });
  return cell;
};

detailVisibilityMode

detailVisibilityMode: DetailVisibilityMode

行詳細をいつ表示するかを決定する値を取得または設定します。

このプロパティのデフォルト値はDetailVisibilityMode.ExpandSingleです。

disposeDetailCell

disposeDetailCell: IDisposeDetailCell

詳細セルを破棄するためのコールバック関数を取得または設定します。

このコールバック関数は、パラメータとしてRow を受け取り、 詳細セルに関連付けられているすべてのリソースを破棄します。

この関数はオプションです。この関数は、自動的に ガベージコレクトされないリソースをcreateDetailCell 関数で 割り当てている場合に使用します。

grid

grid: FlexGrid

このFlexGridDetailProvider を所有するFlexGrid を取得します。

isAnimated

isAnimated: boolean

行詳細を表示するときにアニメーションを使用するかどうかを示す値を取得または設定します。

このプロパティのデフォルト値はfalse です。

keyActionEnter

keyActionEnter: KeyAction

[ENTER]キーが押されたときに実行されるアクションを取得または設定します。

このプロパティのデフォルト設定はKeyAction.None です。 これにより、グリッドはキーを処理できます。 そしてKeyAction.ToggleDetail により、Enterキーを操作して詳細行の表示を切り替えます。

maxHeight

maxHeight: number

詳細行の最大高さをピクセル単位で取得または設定します。

このプロパティのデフォルト値はnull, です。 この場合、詳細行の高さに上限はありません。

rowHasDetail

rowHasDetail: IRowHasDetail

行に詳細があるかどうかを判定するためのコールバック関数を取得または設定します。

このコールバック関数は、パラメータとしてRow を受け取り、 行に詳細があるかどうかを示すブール値を返します。次に例を示します。

// 奇数のCategoryIDを持つ項目から詳細を削除します
dp.rowHasDetail = function (row) {
  return row.dataItem.CategoryID % 2 == 0;
};

このプロパティをnullに設定すると、すべての行に詳細が含まれます。

メソッド

getDetailRow

  • 指定したグリッド行に関連付けられた詳細行を取得します。

    引数

    • row: any

      調査する行または行のインデックス。

    戻り値 DetailRow

hideDetail

  • hideDetail(row?: any): void
  • 指定された行の詳細行を非表示にします。

    引数

    • オプション row: any

      詳細が非表示になっている行または行のインデックス。このパラメータはオプションです。 指定されない場合は、すべての詳細行が非表示になります。

    戻り値 void

isDetailAvailable

  • isDetailAvailable(row: any): boolean
  • 行に表示する詳細があるかどうかを決定する値を取得します。

    引数

    • row: any

      調査する行または行のインデックス。

    戻り値 boolean

isDetailVisible

  • isDetailVisible(row: any): boolean
  • 行の詳細を表示するかどうかを決定する値を取得します。

    引数

    • row: any

      調査する行または行のインデックス。

    戻り値 boolean

showDetail

  • showDetail(row: any, hideOthers?: boolean): void
  • 指定された行の詳細行を表示します。

    引数

    • row: any

      詳細が表示されている行または行のインデックス。

    • オプション hideOthers: boolean

      他のすべての行の詳細を非表示にするかどうか。

    戻り値 void