可直接更新的可编辑网格

Editable grid with direct update

在我们的场景中,我们需要直接从网格中编辑数据,而不通过更改行状态的按钮。

示例:将布尔值更改为数据的复选框。这种更新不一定需要按钮来更改行的状态:用户可以通过复选框更改值而不更改网格的状态。

我的问题是:这样做更方便的方法是什么?我已经看到网格有多种更新(模板驱动程序表单、外部表单、反应式表单等...)但是每次开发人员都必须放置一个按钮来更改行的状态。

我直接将它管理到我的网格模板中,我绕过了 kendoGridEditTemplate 因为它需要用户与行交互。

<ng-template kendoGridCellTemplate
               let-dataItem
               *ngIf="column.value.Type === 'boolean'">
    <span *ngIf="!column.value.Editable" [...]></span>
    <kendo-switch *ngIf="column.value.Editable && Config.Editable === 'Direct'"
                  [ngModel]="dataItem[column.key]" 
                  (ngModelChange)="dataItem[column.key]=$event"
                  (valueChange)="gridEditable.updateData(Config, dataItem, [{field:column.value.Editable.Column, value: $event }])">
</ng-template>

我们将在修改行数据时集成用户交互时使用 kendoGridEditTemplate