如何通过循环语句(或其它)将,一个DataSet显示在界面并且,是一行三列?
如果用了DataList,(我试了,不太灵活,不能很好的控制间距,并且行与行之间不能加入其它的HTML元素),有没有完美的办法。
謝謝!

解决方案 »

  1.   

    DataList就可以呀,在项模板里放个html的table,随便你怎么控制格式.
      

  2.   

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            If Not IsPostBack Then
                Dim dsn As String = "server=(local);uid=sa;pwd=123;database=school"
                Dim conn As SqlConnection = New SqlConnection(dsn)
                conn.Open()
                Dim strsql As String = "select sno,sname,ssex from student"
                Dim ad As SqlDataAdapter = New SqlDataAdapter(strsql, conn)
                Dim ds As New DataSet
                ad.Fill(ds, "student")
                Dim table_ As DataTable = ds.Tables("student")
                conn.Close()            Dim table_head As String = "<table border=""1""><tr><td>学号</td><td>姓名</td><td>性别</td></tr>"
                Dim table_middle As String
                Dim row As DataRow
                Dim col As DataColumn
                For Each row In table_.Rows
                    table_middle &= "<tr>"
                    For Each col In table_.Columns
                        table_middle &= "<td>" & row(col) & "</td>"
                    Next
                    table_middle &= "</tr>"
                Next
                Dim table_result As String = table_head & table_middle & "</table>"
                Response.Write(table_result)
            End If
        End Sub如果将table_head ,table_middle,table_result 设为stringbuilder执行效率更好。
      

  3.   

    http://lovecherry.cnblogs.com/archive/2005/04/28/146749.html
      

  4.   

    <asp:DataList Width=100% id="DataList1" RepeatLayout=Table runat="server" RepeatDirection="Horizontal" RepeatColumns="4" DataSource='<%# GetResultsSource(int.Parse(DataBinder.Eval(Container.DataItem, "mcateid").ToString())) %>'>
    <ItemStyle HorizontalAlign="left"></ItemStyle><ItemTemplate><IMG style="cursor:hand"  onclick='<%#"openmimg("+DataBinder.Eval(Container.DataItem,"mcateid")+")"%>' border=0 height="180" src='<%#@"SystemManager\Magazine\upload\"+DataBinder.Eval(Container.DataItem,"titleimg")%>' width="150"> <script> <!--
    function openmimg(pmid)
    {
    location.href="MagazineList.aspx?cateid="+pmid;
    }//--></script><br>
    <div align="center" class="word4"><%#DataBinder.Eval(Container.DataItem,"mcatename")%></div></ItemTemplate></asp:DataList>
    如果一行4列,但共2条记录,那么这个列是平均分配列间距(占用的3列4列的位置),不能靠左对齐。