2017-09-26 91 views
0

我需要在网格中以蓝色绘制选定的单元格,并每隔10秒刷新一次数据源。但是,所选单元在刷新后会丢失之前添加的类。如何在数据源刷新后保留选定的单元格?

如何在刷新时保留添加的类?

这里是一个普拉克 - https://plnkr.co/edit/ASB4zi5dzMSNTxcquLCa

ngOnInit() { 
     setInterval(() => this.grid.instance.refresh(), 10000); // 10 secs 
} 

selectCell(event) { 
    event.jQueryEvent.target.className += ' blue-border'; // add class to element 
    console.log(event.jQueryEvent.target); 
} 

回答

0

我建议你使用的CSS样式帮助和DxDataGrid多种选择模式(使用“CTRL” +“点击”选择多个项目)解决这个问题:

https://plnkr.co/edit/9vgR7X41jg0KKFeDpUKO?p=preview

使用下面的示例打开多个选择:

<dxo-selection 
    mode="multiple" 
    [showCheckBoxesMode]="false" 
></dxo-selection> 

要自定义组件,请使用/deep/选择器。

如果由于某种原因这种方式不可接受,您可以尝试使用onRowPrepared操作来自定义单元格外观。

+0

第一个建议不是很有用,因为我有兴趣选择单元而不是行。我最终解决了使用[onCellPrepared](https://js.devexpress.com/Documentation/ApiReference/UI_Widgets/dxDataGrid/Events/#cellPrepared)来检查最后选中的单元格的行和columnIndex,并在条件成立时添加类好。 – dexter

相关问题