Я решил проблему, используя небольшую помощь от людей из Telerik, они приказали мне использовать kendoGridCellTemplate
вместо директивы kendoGridEditTemplate
. Но при этом ячейки всегда будут редактируемыми, даже если вы не редактируете строку. Вы должны иметь свойство isEditing
в вашей модели представления (которое у меня уже было) и использовать это логическое значение, чтобы включить или отключить текстовое поле, содержащее такие значения, например:
HTML
<kendo-grid-column field="quantity" title="{{column.ticker}}" *ngFor="let column of tickerColumns;">
<ng-template kendoGridCellTemplate let-dataItem>
<input *ngIf="dataItem.ticker == column.ticker"
[disabled]="!dataItem.isEditing"
[(ngModel)]="dataItem.quantity"
[ngModelOptions]="{standalone: true}" class="k-textbox" required />
</ng-template>
</kendo-grid-column>
В режиме редактирования (то есть, когда вы нажимаете кнопку редактирования рядом с одной строкой) просто переключите значение isEditing для этого dataItem. Когда вы отменяете или сохраняете и заканчиваете редактирование, переключите его снова. Теперь у вас есть настраиваемая сводная сетка для кендо Angular:
![enter image description here](https://i.stack.imgur.com/sgLmZ.png)