• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    asp.net中GridView和DataGrid相同列合并实现代码
    (一)普通列
    复制代码 代码如下:

    /// summary>
    /// Gridview列的合并(普通列,不包含模板列)
    /// 注意:1.GridView在绑定的时候进行分组和排序,才能让相同的行放在一起
    /// 2.方法应用的时机,应该在Gridview的DataBound事件中使用
    /// /summary>
    /// param name="gv">需要合并的GridView对象/param>
    /// param name="columnIndex">所要合并列的索引/param>
    public static void UnitCell(GridView gv, int columnIndex)
    {
    int i = 0; //当前行数
    string lastType = string.Empty; //当前判断是否合并行对应列的值
    int lastCell = 0; //判断最后一个相同值的行的索引
    if (gv.Rows.Count > 0)
    {
    lastType = gv.Rows[0].Cells[columnIndex].Text.ToString();
    gv.Rows[0].Cells[columnIndex].RowSpan = 1;
    lastCell = 0;
    }
    for (i = 1; i gv.Rows.Count; i++)
    {
    if (gv.Rows[i].Cells[columnIndex].Text == lastType)
    {
    gv.Rows[i].Cells[columnIndex].Visible = false;
    gv.Rows[lastCell].Cells[columnIndex].RowSpan++;
    }
    else
    {
    lastType = gv.Rows[i].Cells[columnIndex].Text.ToString();
    lastCell = i;
    gv.Rows[i].Cells[columnIndex].RowSpan = 1;
    }
    }
    }
    /// summary>
    /// DataGrid列的合并(普通列,不包含模板列)
    /// 注意:1.DataGrid在绑定的时候进行分组和排序,才能让相同的行放在一起
    /// 2.方法应用的时机,应该在DataGrid的DataBound事件中使用
    /// /summary>
    /// param name="dg">需要合并的DataGrid对象/param>
    /// param name="columnIndex">所要合并列的索引/param>
    public static void UnitCell_T(DataGrid dg, int columnIndex)
    {
    int i = 0; //当前行数
    string lastType = string.Empty; //当前判断是否合并行对应列的值
    int lastCell = 0; //判断最后一个相同值的行的索引
    if (dg.Items.Count> 0)
    {
    lastType = dg.Items[0].Cells[columnIndex].Text.ToString();
    dg.Items[0].Cells[columnIndex].RowSpan = 1;
    lastCell = 0;
    }
    for (i = 1; i dg.Items.Count; i++)
    {
    if (dg.Items[i].Cells[columnIndex].Text == lastType)
    {
    dg.Items[i].Cells[columnIndex].Visible = false;
    dg.Items[lastCell].Cells[columnIndex].RowSpan++;
    }
    else
    {
    lastType = dg.Items[i].Cells[columnIndex].Text.ToString();
    lastCell = i;
    dg.Items[i].Cells[columnIndex].RowSpan = 1;
    }
    }
    }

    (二)模板列
    复制代码 代码如下:

    /// summary>
    /// Gridview列的合并(模板列)
    /// /summary>
    /// param name="gv">需要合并的GridView对象/param>
    /// param name="columnIndex">所要合并列的索引/param>
    /// param name="lblName">模板列对象的ID/param>
    public static void UnitCell(GridView gv, int columnIndex, string lblName)
    {
    int i = 0; //当前行数
    string lastType = string.Empty; //当前判断是否合并行对应列的值
    int lastCell = 0; //判断最后一个相同值的行的索引
    if (gv.Rows.Count > 0)
    {
    lastType = (gv.Rows[0].Cells[columnIndex].FindControl(lblName) as Label).Text;
    gv.Rows[0].Cells[columnIndex].RowSpan = 1;
    lastCell = 0;
    }
    for (i = 1; i gv.Rows.Count; i++)
    {
    if ((gv.Rows[i].Cells[columnIndex].FindControl(lblName) as Label).Text == lastType)
    {
    gv.Rows[i].Cells[columnIndex].Visible = false;
    gv.Rows[lastCell].Cells[columnIndex].RowSpan++;
    }
    else
    {
    lastType = (gv.Rows[i].Cells[columnIndex].FindControl(lblName) as Label).Text.ToString();
    lastCell = i;
    gv.Rows[i].Cells[columnIndex].RowSpan = 1;
    }
    }
    }

    (三)在DataBound事件中调用即可。

    在GridView或DataGrid中显示固定宽度的列

    默认情况下,Gridview和Datagrid控件依据它们的内容自动调整列大小。要为列指定固定宽度,设置每个Tablecell对象的Width属性并设置Wrap属性为False。下面的例子显示了如何通过使用DataGrid控件去做。
    复制代码 代码如下:

    rotected void DataGrid1_ItemCreated(object sender, DataGridItemEventArgs e)
    {
    ListItemType lit = e.Item.ItemType;
    if (lit == ListItemType.Header)
    {
    for (int i = 0; i e.Item.Cells.Count; i++)
    {
    e.Item.Cells[i].Width = Unit.Pixel(50);
    e.Item.Cells[i].Wrap = false;
    }
    }
    }
    您可能感兴趣的文章:
    • datalist,Repeater和Gridview的区别分析
    • asp.net中让Repeater和GridView支持DataPager分页
    • repeater、gridview 在绑定时判断判断显示不同的行样式或文本
    • ASP.NET MVC4之js css文件合并功能(3)
    • Asp.net程序优化js、css实现合并与压缩的方法
    • Asp.net_Table控件の单元格纵向合并示例
    • ASP.NET GridView 实现课程表显示(动态合并单元格)实现步骤
    • asp.net中rdlc 合并行的方法
    • asp.net 合并GridView中某列相同信息的行(单元格)
    • ASP.NET中GridView和Repeater重复数据如何合并
    上一篇:ASP.NET Web页生命周期和执行的方法介绍
    下一篇:asp.net配置会话状态Session实现代码
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    asp.net中GridView和DataGrid相同列合并实现代码 asp.net,中,GridView,和,DataGrid,