我想在DATAGRID的标题中显示如下
       商品                             产品
商品数量  商品金额              产品数量   产品金额
10          $200.00              20          $30.00
用DATAGRID能实现吗?

解决方案 »

  1.   

    改用 MSHflexGrid 吧。DataGrid 设置两列表头不是问题,但无法合并单元格。
      

  2.   

    用MSHFlexGrid控件的话,就是设置其MergeCol、MergeRow属性。MSDN中有示例
      

  3.   

    不知你的数据是否来自数据库表,以及你是如何对表格赋值的,难以给出例子。如果是绑定记录集的,建议在查询后:MSHFlexGrid1.AddItem "商品" & vbTab & "商品" & vbTab & "产品" & vbTab & "产品", 0
    MSHFlexGrid1.MergeCells = flexMergeRestrictRows
    MSHFlexGrid1.MergeRow(0) = True
      

  4.   

    '填充自定义打印双表头
        fg.TextMatrix(0, 0) = "单位"
        fg.TextMatrix(1, 0) = "单位"
        
        fg.TextMatrix(0, 1) = "工程名称"
        fg.TextMatrix(1, 1) = "工程名称"
        
        fg.TextMatrix(0, 2) = "批复文号"
        fg.TextMatrix(1, 2) = "批复文号"
         
        fg.TextMatrix(0, 3) = "经  费" '由于控件不支持打印位置对齐
        fg.TextMatrix(0, 4) = "经  费" '以空格的方式调整位置
        fg.TextMatrix(0, 5) = "经  费"
        
        fg.TextMatrix(1, 3) = "国拨"
        fg.TextMatrix(1, 4) = "自筹"
        fg.TextMatrix(1, 5) = "贷款"
        
        fg.TextMatrix(0, 6) = "建设内容"
        fg.TextMatrix(1, 6) = "建设内容"
        
        fg.MergeRow(0) = True
        
        fg.MergeCol(0) = True
        fg.MergeCol(1) = True
        fg.MergeCol(2) = True
        fg.MergeCol(3) = True
        fg.MergeCol(4) = True
        fg.MergeCol(5) = True
        fg.MergeCol(6) = True
        
        fg.Redraw = False
    fg=MsFlexGrid
    在网上不少 包括可以隔行换色