• repeater相同行合并


    代码
    <table  width="100%"    id="mytable" >
        
    <tr align="center">
          
    <th>学号</th><th>姓名</th><th>起止时间</th> <th>学习(或工作)单位</th> <th>职务</th> <th>证明人</th> <th>备注</th>
        
    </tr>
        
    <asp:Repeater ID="Repeater1" runat="server" onprerender="Repeater1_PreRender">
        
    <ItemTemplate>
        
    <tr><td id="tdxuehao" runat="server">&nbsp;<%#Eval("xuehao"%></td><td id="tdxsname" runat="server">&nbsp;<%#Eval("xsname")%></td><td>&nbsp;<%#Eval("qzsj")%></td> <td>&nbsp;<%#Eval("grjl")%></td> <td>&nbsp;<%#Eval("zw")%></td> <td>&nbsp;<%#Eval("zmr")%></td> <td>&nbsp;<%#Eval("bz")%></td>
        
    </tr>
        
    </ItemTemplate>
        
    </asp:Repeater>
        
           
    </table>
    代码
    protected void Repeater1_PreRender(object sender, EventArgs e)
            {
                
    for (int i = Repeater1.Items.Count - 1; i > 0; i--)
                {
                    
    //tcid是需要合并列的列名
                    HtmlTableCell oCell_previous = Repeater1.Items[i - 1].FindControl("tdxuehao"as HtmlTableCell;
                    HtmlTableCell oCell 
    = Repeater1.Items[i].FindControl("tdxuehao"as HtmlTableCell;
                    
    if (oCell_previous != null && oCell != null)
                    {
                        oCell.RowSpan 
    = (oCell.RowSpan == -1? 1 : oCell.RowSpan;
                        oCell_previous.RowSpan 
    = (oCell_previous.RowSpan == -1? 1 : oCell_previous.RowSpan;

                        
    if (oCell.InnerText == oCell_previous.InnerText)
                        {
                            oCell.Visible 
    = false;
                            oCell_previous.RowSpan 
    += oCell.RowSpan;
                        }
                    }


                    HtmlTableCell nameprevious 
    = Repeater1.Items[i - 1].FindControl("tdxsname"as HtmlTableCell;
                    HtmlTableCell name 
    = Repeater1.Items[i].FindControl("tdxsname"as HtmlTableCell;
                    
    if (nameprevious != null && name != null)
                    {
                        name.RowSpan 
    = (name.RowSpan == -1? 1 : name.RowSpan;
                        nameprevious.RowSpan 
    = (nameprevious.RowSpan == -1? 1 : nameprevious.RowSpan;

                        
    if (name.InnerText == nameprevious.InnerText)
                        {
                            name.Visible 
    = false;
                            nameprevious.RowSpan 
    += name.RowSpan;
                        }
                    }
                }


            }
  • 相关阅读:
    设计模式 享元模式(池化技术)
    设计模式 混合模式(整体部分模式)
    设计模式 适配器模式
    Flex3示例、 安装 、注册码
    VS2010错误
    转载:glut.h 与 stdlib.h中 的exit()重定义问题的解决
    宿迁软件QQ群(109233721)
    百度地图 开发API接口啦
    Sublime Text 插件个人使用总结&推荐
    sublime text2 使用安装插件中文乱码问题解决
  • 原文地址:https://www.cnblogs.com/luyesql/p/1864580.html
Copyright © 2020-2023  润新知