如何添加双击事件并在 Angular KendoUI 中传递选定的行数据

Posted

技术标签:

【中文标题】如何添加双击事件并在 Angular KendoUI 中传递选定的行数据【英文标题】:How can I add double click event and pass the selected row data in Angular KendoUI 【发布时间】:2018-09-06 17:18:46 【问题描述】:

您好,我无法在 Angular/KendoUI 网格数据中获取选定的行数据。我在选择行时创建了一个双击事件。我没有使用给定的可选属性,因为我需要通过双击来选择记录。

在我的组件模板中我是这样做的

<kendo-grid [data]="gridData" (dblclick)="selectAccount(gridData, $event)">

【问题讨论】:

【参考方案1】:

由于性能损失,有些事件在 Kendo Grid 中不可用:https://github.com/telerik/kendo-angular/issues/21

您可以使用 Kendo Grid 组件中的 selectChange 事件从网格中获取您需要的信息或对象,然后在网格上双击事件。这是我如何处理此问题的示例:

在模板上

<kendo-grid
    [data]="(gridData$ | async)"          
    [selectable]="true"
    (selectionChange)="onSelection($event)"
    (dblclick)="onGridDoubleClick()">
    <kendo-grid-column field="columnA"></kendo-grid-column>
    <kendo-grid-column field="columnB"></kendo-grid-column>
</kendo-grid>

.ts 组件文件上:

public onSelection(event): void 
    // you will need to declare a selectedItem variable to store this
    this.selectedItem = event.selectedRows[0].dataItem;


public onGridDoubleClick(): void  
    // Do what you need with the selected item 

【讨论】:

以上是关于如何添加双击事件并在 Angular KendoUI 中传递选定的行数据的主要内容,如果未能解决你的问题,请参考以下文章

Angular 7单击和双击事件

Angular 2如何在选项内添加点击事件?

Angular 2. 删除 @Hostlistener()

在windows mobile6.0开发中 如何给 listbox的items添加双击事件

如何在Angular中的事件函数内调用组件的方法?

在 CellTable 单元格中添加双击事件 - GWT