lingee 发表于 2024-3-14 15:43:14

关于C1Flexgrid合计行样式

.NET6的环境,C1.Win.FlexGrid.Ja(ver6.0.20232.611)
虽然是日文版的,估计中文版现象是一样的,想请教下如何实现。

示例代码在附件中,求教:
1. 如何让合计行(Subtotal0和Subtotal1),合并在一个cell中,想要的效果是,中间没有列的边框线,鼠标选中时是整行高亮(数据行还是保持cell选中)
    *我试了MergedRanges但没效果
2. 对某一列(e列)单独定义了样式,希望合计行还是保持合计行的样式,不要被列样式影响。

Richard.Ma 发表于 2024-3-14 18:18:21

本帖最后由 Richard.Ma 于 2024-3-14 18:33 编辑

分组行比较特殊,因为有自己特有的行为逻辑,所以不支持merge

至于想要给非分组行设置样式,你可以尝试使用OwnerDrawCell事件,但是目前实际上也没有什么好的办法区分普通单元格和分组单元格

private void Grid_OwnerDrawCell(object sender, OwnerDrawCellEventArgs e)
      {
            if (e.Col == 5)
            {

                if (grid.Rows.DataSource is DataRowView)
                {
                  e.Style.BackColor = Color.Green;
                }
                else
                {
                  if (grid.GetCellStyleDisplay(e.Row,1).BackColor==Color.Red)
                        e.Style.BackColor = Color.Red;
                  else
                        e.Style.BackColor = Color.PeachPuff;
                }
            }
      }


页: [1]
查看完整版本: 关于C1Flexgrid合计行样式