合并GridView中某列(含模板列)相同信息的行(单元格)

合并GridView中某列(含模板列)相同信息的行(单元格)

    合并GridView中某列相同信息的行(单元格) 

在做一个项目时,需要合并gridview中相同信息的列,于是google了一下,发现了下面的这个例子:

http://blog.csdn.net/images/blog_csdn_net/quou2002/191571/r_1.JPG
http://blog.csdn.net/images/blog_csdn_net/quou2002/191571/r_2.JPG


解决方法如下(写在公共模块里,定义为静态方法方便调用):

/// <summary>
/// 合并GridView中某列相同信息的行(单元格) 
/// </summary>
/// <param name="GridView1">GridView</param>
/// <param name="cellNum">第几列</param>
public static void GroupRows(GridView GridView1, int cellNum)
{
int 0, rowSpanNum 1;
while (i GridView1.Rows.Count 1)
10 {
11 GridViewRow gvr GridView1.Rows[i];
12 
13 for (++i; GridView1.Rows.Count; i++)
14 {
15 GridViewRow gvrNext GridView1.Rows[i];
16 if (gvr.Cells[cellNum].Text == gvrNext.Cells[cellNum].Text)
17 {
18 gvrNext.Cells[cellNum].Visible false;
19 rowSpanNum++;
20 }
21 else
22 {
23 gvr.Cells[cellNum].RowSpan rowSpanNum;
24 rowSpanNum 1;
25 break;
26 }
27 
28 if (i == GridView1.Rows.Count 1)
29 {
30 gvr.Cells[cellNum].RowSpan rowSpanNum;
31 }
32 }
33 }
34 }
35 
36 

但是当我把代码拷贝到我的项目中时,却怎么也不能得到想要的结果,相当于上面例子中全部都变成了金马店 ,于是将代码重新读了一遍,发现没有什么问题百思不得其解,郁闷了好半天后,才发现,上面例子中的cells[cellNum].text 取的是row中的值,而需要合并的是一个模板列中的lable,经修改:

 

        int 0,rowSpanNum 1;
        int cellNum 0; //此处cellnum的值为你想要合并的列的索引,从0开始
        while (i GridView1.Rows.Count 1)
        {
            GridViewRow gvr GridView1.Rows[i];
            
            Label tmplable (Label)gvr.FindControl("UpUnitName");
            
            for (++i; GridView1.Rows.Count; i++)
            {
                GridViewRow gvrNext GridView1.Rows[i];
                Label tmplable1 (Label)gvrNext.FindControl("UpUnitName");


                if (tmplable.Text == tmplable1.Text)
                {
                    gvrNext.Cells[cellNum].Visible false;
                    rowSpanNum++;
                }
                else
                {
                    gvr.Cells[cellNum].RowSpan rowSpanNum;
                    rowSpanNum 1;
                    break;
                }

                if (i == GridView1.Rows.Count 1)
                {
                    gvr.Cells[cellNum].RowSpan rowSpanNum;
                }
            }

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、表头表尾 1、自定义多表头,合并合并 2、删除表身指定 3、固定表头,向下拉动滚动条时,表头固定不动 4、表脚统计,总计、平均值 二、导入导出 1、导出Excel,Word 2、导入Excel 三、多层嵌套 1、在父GridView的编辑模板嵌套一个子GridView 2、三层GridView嵌套 四、分页排序 1、分页 2、排序,点击升序、降序排序 五、结合控件 1、CheckBox控件,多选、全选 2、DropDownList控件 3、隐藏控件,当选择处理状态选备注时,隐藏textbox显示 4、radio控件,选获取GridView表主键 5、GridViewDropDownList绑定数据,直接绑定显示,无需点击编辑按纽。 6、JavaScript操作checbox实现全选,多选 六、设置属性 1、JavaScript设置GridView的背景颜色,单偶的背景颜色,鼠标停留背景,鼠标选时的背景 2、GridView的JavaScript单击,双击、删除提示框、快捷键事件 3、GridView设置属性,单元格文本颜色,单元格背景颜色,表增加空 七、无代码 GridView排序、发送邮件、点击查看详情,内容过长截取 八、选增删改 1、GridView自带的选、编辑、删除,即CommandField 2、GridView添加记录,在GridView表脚添加控件,用添加记录 3、更新所有记录,GridView直接绑定控件,然后更新 九、主键索引 根据主键多条记录删除,单条记录删除。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值