1

詳細テンプレート機能を備えたグリッドがあります。行の選択時、またはグリッドの列の 1 つのリンク時に、展開 +/ - を使用せずに、このテンプレートを自分で開きたいと思います。

これを行う方法はありますか?このテンプレートを開くために剣道で使用するものを自分で呼び出すことはできますか? このようなもの?

<kendo-grid
    [data]="gridView | async"
    [skip]="skip"
    [scrollable]="'virtual'"
    [selectable]="true"
    [pageSize]="pageSize"
    [height]="600"
    [rowHeight]="36"
    [detailRowHeight]="36"
    (pageChange)="pageChange($event)">
    <kendo-grid-column field="clientID" title="ID" width="80">
        <template kendoCellTemplate let-dataItem>
            <button class="btn btn-link" (click)="expandDetail()">{{dataItem.clientID}}</button>
        </template>
    </kendo-grid-column>
<template kendoDetailTemplate let-dataItem>
      My Very interesting details go here ...
</template>
</kendo-grid>
4

3 に答える 3

1

現時点では、グリッド コンポーネントはそのような API をサポートしていません。これは実装のためにログに記録され、この GitHub の問題で追跡できます

于 2016-11-24T15:30:33.607 に答える
0

OnDataBoundEvent を処理することにより、すべての行をプログラムで展開できます。

this.expandRow(this.tbody.find("tr.k-master-row"));

元に戻したい場合はご利用ください

this.collapseRow(this.tbody.find("tr.k-master-row"));

詳細テンプレートを初期化するだけの場合は、展開と折りたたみを同時に行うことができます。

于 2017-01-05T09:04:24.947 に答える
0

これは(今?-利用可能になった期間はわかりません-剣道角度グリッドを数日間使用しただけです)、jQueryを使用して最初に与えられた回答と同様の方法でプログラム的に達成できます:

// using cell click event in template
cellClickHandler({ sender, rowIndex, columnIndex, dataItem, column }) {

    sender.collapseRow(rowIndex);  // close

    // OR

    sender.expandRow(rowIndex);   // open
}  
于 2017-12-10T07:40:14.280 に答える