name   department  duty      email        ProView
wkk    開發部        程序員     [email protected]  預覽
wkk    資訊課        技術員     [email protected]  預覽
wkk    總經理室      稽核組員   [email protected]  預覽
wnj    總經理室      稽核組員   [email protected]  預覽
wnj    總務課        車輛管理員 [email protected]  預覽
我想要得到的效果        開發部        程序員   
wkk    資訊課        技術員      [email protected] 預覽
        總經理室      稽核組員
wnj    總經理室      稽核組員
       總務課        車輛管理員   [email protected] 預覽這里我只是隨便寫了幾列,因為列數太多,所以希望大家能夠提供動態的合并單元格代碼
而且預覽列不是綁定列,而是模板列,請大家幫我,就是把相同的值的列合并,但是有個前提
就是以name為標識

解决方案 »

  1.   

    http://www.vs2005.com/WebControls/a477p1.aspx 看看这个就知道了
      

  2.   

    ItemDataBound事件里
            {
                if ((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem))
                {
                    if (e.Item.ItemIndex == 0)
                    {
                        this.mDate = e.Item.Cells[0].Text;
                        this.mDateRows = 2;
                        this.mDateIndex = 0;
                    }
                    else
                    {
                        if (e.Item.Cells[0].Text == this.mDate)
                        {
                            this.Dg_view.Items[this.mDateIndex].Cells[0].RowSpan = mDateRows;
                            this.mDateRows += 1;
                            e.Item.Cells[0].Visible = false;                    }
                        else
                        {
                            this.mDate = e.Item.Cells[0].Text;
                            this.mDateRows = 2;
                            this.mDateIndex = e.Item.ItemIndex;
                        }
                    }
                }        }自己根据情况改一下把
      

  3.   

    楼上的方法可行,用asp.net不要光局限于控件。
    http://blog.csdn.net/ojekleen/archive/2007/11/09/1876068.aspx
      

  4.   

    楼主的要求不是很好实现,就我的经验,最大的问题是在RowDataBound的时候不能确认究竟是要跨几行
      

  5.   

    DataList 可以把多列放在一个单元格里。
      

  6.   

          開發部        程序員 
    wkk    資訊課        技術員      [email protected] 預覽
            總經理室      稽核組員
    wnj    總經理室      稽核組員
          總務課        車輛管理員  [email protected] 預覽 wkk是显示在第二个,wnj显示第个??
      

  7.   

    if object_id('tb') is not null
    drop table tb
    go
    create table tb(name varchar(50),department varchar(50),duty varchar(50),email varchar(50),proview varchar(50))
    insert into tb select 'wkk','開發部','程序員','[email protected]','預覽'
    insert into tb select 'wkk','資訊課','技術員','[email protected]','預覽'
    insert into tb select 'wkk','總經理室','稽核組員','[email protected]','預覽'
    insert into tb select 'wnj','總經理室','稽核組員','[email protected]','預覽'
    insert into tb select 'wnj','總務課','車輛管理員','[email protected]','預覽'select case when row_number() over(partition by name order by orderid)=1 then name else '' end as name,
    department, duty,
    case when row_number() over(partition by name order by orderid)=1 then email else '' end as email,
    case when row_number() over(partition by name order by orderid)=1 then proview else '' end as proview
    from (
    select row_number() over(order by name) as orderid,* from tb)tname department duty email proview
    wkk 開發部 程序員 [email protected] 預覽
    資訊課 技術員
    總經理室 稽核組員
    wnj 總經理室 稽核組員 [email protected] 預覽
    總務課 車輛管理員
      

  8.   

    name department duty email proview
    wkk 開發部 程序員 [email protected] 預覽
    資訊課 技術員
    總經理室 稽核組員
    wnj 總經理室 稽核組員 [email protected] 預覽
    總務課 車輛管理員
      

  9.   

    请教下啊  那个this.mDate  this.mDateRows = 2 this.mDateIndex = 0; 各代表的是什么意思啊?