我如何设置Ext JS Grid行的背景颜色,主要是选择的项目。
非常感谢任何帮助。
答案 0 :(得分:13)
要更改选定的行颜色,您必须覆盖相应的CSS类:
.x-grid3-row-selected {
background-color: red !important;
}
如果您想使用该类,也可以覆盖默认的border-color
。
另一方面,getRowClass
函数用于使用业务逻辑向行添加静态CSS类,以确定哪些行受到影响。您也可以通过这种方式实现行着色,但它不会影响突出显示的行颜色(尽管您也可以编写同时使用这两个类的CSS)。
编辑:要以编程方式更改行样式,您仍然需要在CSS中静态定义样式,然后根据需要动态添加/删除CSS类。例如,假设网格和id为'my-btn'的按钮,单击该按钮将向网格中的第一行添加一个类(可以像上面显示的那样定义.x-grid3-row-selected),应用CSS类中的任何样式。由您来定义用于选择行的实际业务逻辑,但这是语法:
Ext.get('my-btn').on('click', function(){
Ext.fly(myGrid.getView().getRow(0)).addClass('error');
});
答案 1 :(得分:2)
@bmoeskau你给的这件事与我无关。 我宁愿使用
grid.getView().addRowClass(rowIndex, 'red');
在onDoubleClick函数中。