村里人 发表于 2021-3-12 10:08:00

flexGrid分组面板,是否可以修改各组的名称

如下图,按照箱号来分组,共分成了四组。箱号为0的表示还未装箱的产品。是否可以把0修改成未装箱


KevinChen 发表于 2021-3-12 18:58:29

您好,原生没有提供这个接口,您可以参考自定义单元格的示例:
https://demo.grapecity.com.cn/wijmo/demos/Grid/CustomCells/ConditionalStyling/purejs
可以尝试在formatItems事件中监听单元格类型,然后排查出group header的单元格,再做判断和修改。

村里人 发表于 2021-3-15 10:44:53

请问怎么排查group header的单元格?属性名是什么?

KevinChen 发表于 2021-3-15 13:38:12

您好,经仔细验证,formatItems中确实拿不到group Header的内容。实际上,wijmo中可以定制分组头部的信息,如API:
https://demo.grapecity.com.cn/wijmo/api/classes/wijmo_grid.flexgrid.html#groupheaderformat
但您的需求是动态的,这点目前确实做不到,只能考虑用一些事件动态修改这个groupheaderformat了

月亮和乌龟 发表于 2021-6-10 14:38:39

村里人 发表于 2021-3-15 10:44
请问怎么排查group header的单元格?属性名是什么?

可以排查是不是groupheader。
self.theGrid.formatItem.addHandler(function (s, e) {
                if (e.panel == s.cells && e.col === 0 && !(s.rows instanceof wj.grid.GroupRow)) {

月亮和乌龟 发表于 2021-6-10 14:40:38

村里人 发表于 2021-3-15 10:44
请问怎么排查group header的单元格?属性名是什么?

我也是要自定义groupheade。我的写法是
self.theGrid.formatItem.addHandler(function (s, e) {
                if (e.panel == s.cells && s.rows instanceof wj.grid.GroupRow && e.col === 0) {
                  var html = e.cell.innerHTML;
                  html = html.replace(/Rowname:/,"").replace(/\(.*?\)/,"");
                  if(self.browser === '2'){
                        if(self.canEdit){
                            html +=`<div class="add_staff_button" style="display: contents;">+</div>`;
                        }else{
                            html +=`<div class="add_staff_button display_none">+</div>`;
                        }
                  }
                  e.cell.innerHTML = html;
                }
            });

Richard.Ma 发表于 2021-6-10 15:15:10

感谢分享代码。
页: [1]
查看完整版本: flexGrid分组面板,是否可以修改各组的名称