<asp:TemplateColumn HeaderText="aa" SortExpression="aa" ItemStyle-Width="38%">
<ItemTemplate>
<asp:Label id="Label3" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "aa").ToString().Trim() %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="bb" SortExpression="bb" ItemStyle-Width="19%">
<ItemTemplate>
<asp:Label id="Label1" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "bb").ToString().Trim() %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateColumn>这样显示的效果是两列,但我想要的效果是两个标题合在一起,并且上面再写一个cc
形如
                cc
              aa  bb 
这种情况在datagrid中可以实现吗??

解决方案 »

  1.   

    在DG的下面这个事件里面.
    实现的功能是在月的上面加上季度private void datagrid_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    if(e.Item.ItemType==ListItemType.Header)
    {
    for (int i=0;i<e.Item.Cells.Count;i++)
    e.Item.Cells[i].Wrap = false; Table t = (Table)dgUnit.Controls[0];
    DataGridItem tr = new DataGridItem(0,0,ListItemType.Header); 
    TableCell tc;
    tc = new TableCell();
    tc.Text = "四季度";
    tc.HorizontalAlign = HorizontalAlign.Center;
    tc.ColumnSpan = 2;
    tc.Wrap = false;
    tr.Cells.AddAt(0,tc);
    tc = new TableCell();
    tc.Text = "三季度";
    tc.HorizontalAlign = HorizontalAlign.Center;
    tc.ColumnSpan = 2;
    tc.Wrap = false;
    tr.Cells.AddAt(0,tc);
    tc = new TableCell();
    tc.Text = "二季度";
    tc.HorizontalAlign = HorizontalAlign.Center;
    tc.ColumnSpan = 2;
    tc.Wrap = false;
    tr.Cells.AddAt(0,tc);
    tc = new TableCell();
    tc.Text = "一季度";
    tc.HorizontalAlign = HorizontalAlign.Center;
    tc.ColumnSpan = 2;
    tc.Wrap = false;
    tr.Cells.AddAt(0,tc);
    tc = new TableCell();

    tc = e.Item.Cells[0];
    tc.RowSpan = 2;
    tr.Cells.AddAt(0,tc); t.Rows.AddAt(0,tr);

    }
    }
      

  2.   

    合并的话可以在text属性把两个绑定给组合起来,如果你这个是重复出现的话,可以用在itemtemplate套个表格
      

  3.   

    你说的这个叫双标题显示吧
    二楼的不错
    你需要在datagrid控件中的ItemCreated事件中添加代码
    主要利用单元格对象的ColumnSpan属性
    就是画表格
      

  4.   

    To:Ly105(等待) 
    这是后台,能把前台datagrid也贴出来吗??
      

  5.   

    你可以在SQL语句里面实现你的想法,假设原来的SQL语句如下:
    select cc,aa,bb from table
    这样你分别绑定出现你现在的情况,那么,要实现楼主的想法,你即可
    select cc & '<br>' & aa & bb as title from table
    然后求取出来之后,只要绑定这个title字段就可以正确显示类似效果了.