• DATAGRID分组 通用函数


    #region Formatdg
    private void FormatGrid( DataGrid dg,int t )
    {
    if(dg.Items.Count!=0)
    {
    int begin=0;//合并相同的客户名,begin是首列
    int end=0;//end是尾列
    string pre=dg.Items[0].Cells[t].Text;//标记,表示相同客户名的首列
    string cur;//下一个客户名
    for ( int i=0;i<dg.Items.Count;i++ )
    {
    cur=dg.Items[i].Cells[t].Text;
    if( cur!=pre )//如果前后两个客户名不同
    {
    end=i-1;
    pre=cur;//pre变成新出现的那个不同的客户名
    if( end>begin )
    {
    for( int j=begin+1;j<=end;j++ )//从begin到end,清除相同的客户名
    {
    dg.Items[begin].Cells[t].RowSpan=end-begin+1;
    dg.Items[j].Cells[t].Visible=false;
    //dg.Items[j].Cells.RemoveAt(0);
    }
    }
    else//客户名为最后一组的情况
    {
    end=dg.Items.Count;
    for( int j=begin+1;j<end;j++ )
    {
    dg.Items[begin].Cells[t].RowSpan=end-begin;
    dg.Items[j].Cells[t].Visible=false;
    //dg.Items[j].Cells.RemoveAt(0);
    }
    }
    begin=i;
    }
    else//只有一组相同客户名的情况
    {
    end=dg.Items.Count;
    if(i==dg.Items.Count-1)
    {
    for( int j=begin+1;j<end;j++ )
    {
    dg.Items[begin].Cells[t].RowSpan=end-begin;
    dg.Items[j].Cells[t].Visible=false;
    //dg.Items[j].Cells.RemoveAt(0);
    }
    }

    }

    }

    }

    }
    #endregion

  • 相关阅读:
    MySQL 联合索引测试
    Redis的安装
    MySQL中int(5) 中的5代表什么意思?
    JS树结构转list结构
    SpringMVC数组参数
    立即执行函数(function(){})()与闭包
    女票口红礼物列表
    Idea中编辑后需要重启问题
    Myeclipse6.5迁移到IDEA
    Layui前端框架
  • 原文地址:https://www.cnblogs.com/Fooo/p/519582.html
Copyright © 2020-2023  润新知