我现在遇到这样一个问题,有个DATAGRID,要求让我呈现的信息 我无法通过一个查询语句完成,所以就无法直接返回一个DATASET,我现在只能通过多个查询语句来返回每个对应字段,这个有没有好的方法完成,有点晕  谢谢

解决方案 »

  1.   

    可以在DataTable中组合再绑定
    比如
    DataTable NewTx=new DataTable();
    NewTx.Columns.Add("指标名",System.Type.GetType("System.String"));
    DataRow dry=NewTx.NewRow();
    dry["指标名"]=this.dset.Tables["zb2"].Rows[i][0].ToString();
    NewTx.Rows.Add(dry);
      

  2.   

    如果真的是一个查询语句搞不定的。我就不用DataGrid了。我会用Asp:Table。然后自己拼出自己想要的数据
    如果表格是死的。那就先划表格,用Label绑定数据就行了。
    如果是动态的,视数据库如何设计而定。但是原则上是以ASP:TABLE,拼出来,需要从数据中知道每个框需要跨几行,几列。
    大致的意思如下:
    dim tr as TableRow
    dim tc as TableCellfor循环
       tr=new TableRow
       for循环
          tc=new TableCell
          tc.text=要的数据
          tc.RowSpan=行跨格数
          tc.ColSpan=列跨格数
          tr.Cells.add(tc)
       next
       Table1.Rows.add(tr)
    next细节就得自己想了。反正我是用了三天,拼出了一个大的报表,涉及到八个数据库表,用了四层For循环。你这个我估计会简单不少吧。