DevExpress ASPxGridView如何实现合并单元格功能

protected void ASPxGridView1_CustomCellMerge(object sender, ASPxGridViewCustomCellMergeEventArgs e)
{
string sFiledName = “”;//当前单元格所在列的列名定义
sFiledName = ((GridViewEditDataColumn)e.Column).FieldName;//由于e.Column继承GridViewEditDataColumn父类,所以强转成父类然后调用FieldName即可获取列名

        if (lMergeFileds.Contains(sFiledName))//lMergeFileds:List集合,即需要合并列的列名集合,sFiledName:当前单元格所在列名
        {
            int iFirst_Row = e.RowVisibleIndex1;//当前行的行号
            int iSecond_Row = e.RowVisibleIndex2;//下一行的行号
            object oFirst_Value = e.Value1;//当前行单元格的值
            object oSecond_Value = e.Value2;//下一行单元格的值
            object oYwbh_First = ASPxGridView1.GetRowValues(iFirst_Row, sMergeByKey);//获取当前行关键列的单元格的值,注:关键列是指依据哪列进行合并的列名(字符型)
            object oYwbh_Second = ASPxGridView1.GetRowValues(iSecond_Row, sMergeByKey);//获取第二行关键列的单元格的值,注:关键列是指依据哪列进行合并的列名(字符型)

            if (oYwbh_First.Equals(oYwbh_Second))//当第一行业务编号与第二行业务编号相同时
            {
                if (oFirst_Value.Equals(oSecond_Value))//当第一行单元格的值与第二行单元格的值相同时
                {
                    e.Merge = true;//合并
                }
                else//当第一行单元格的值与第二行单元格的值不相同时
                {
                    e.Merge = false;//不合并
                }
            }
            else//当第一行业务编号与第二行业务编号不相同时
            {
                e.Merge = false;

            }

        }
        e.Handled = true;//关键代码:此句负责执行上面的合并,刷新客户端的表格中的合并情况

    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值