数据1   数据2   数据3   数据4   数据5-----------有条水平线-------------数据6   数据7
怎么弄呢?

解决方案 »

  1.   

    参考:<html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <style>
            .datalist
            {
                border-bottom:solid 1px black;
            }
        </style>
    </head>
    <body>
        <form id="form1" runat="server">
        <asp:DataList ID="DataList1" runat="server" RepeatColumns="5" RepeatDirection="Horizontal">
            <ItemTemplate>
                <%# Eval("ID") %>
            </ItemTemplate>
            <ItemStyle CssClass="datalist" />
        </asp:DataList>
        </form>
    </body>
    </html>        protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    DataTable dt = new DataTable();
                    dt.Columns.AddRange(new DataColumn[] { new DataColumn("ID", typeof(int)) });
                    for (int i = 0; i < 20; i++)
                        dt.Rows.Add(i + 1);
                    DataList1.DataSource = dt;
                    DataList1.DataBind();
                }
            }
      

  2.   

    1<asp:DataGrid id="DataGrid1" runat="server">
    2     <Columns>
    3      <asp:TemplateColumn>
    4       <ItemTemplate>
    5        <%# returnString(Container.ItemIndex + 1%)>
    6       </ItemTemplate>
    7      </asp:TemplateColumn>
    8     </Columns>
    9 </asp:DataGrid>returnString为后台的方法:可以这样写string returnStirng(int n)
    {
       if(n%5==0)
       {
          return "<hr>";
       }
       else
       {
           return "";
       }
    }注意一下Container.ItemIndex+1看是什么类型,我记不太清了,如果不是int型转一下 
    GridView中用 Container.DataItemIndex+1
    DataGrid和Repeater中用  Container.ItemIndex+1
    DataList类似,可以用Container.ItemIndex+1试一下