就是多列。但是几列数据不确定。
我现在要统计 一个班级有多少“党员”,因为每个班级只有几个人。
所以想横向显示。但具体几列还不确定。
问下 repeater可以横向显示么
如果可以 给点代码
谢谢了

解决方案 »

  1.   

    repeater里面的内容要怎么显示你可以自己去设置表格、模板
    不知道楼主说的横向显示是什么样的
      

  2.   

    用datalist可以实现你的要求!
      

  3.   

    可以的啊 用css控制啊 repeater怎么显示都可以的
      

  4.   

    每两列排列的例子 
    复制直接可运行 
    <%@   Import   Namespace= "System.Data "   %> 
    <%@   Import   Namespace= "System.Data.SqlClient "   %> <html> 
      <script   language= "C# "   runat= "server ">         void   Page_Load(Object   sender,   EventArgs   e)   {                 SqlConnection   myConnection   =   new   SqlConnection( "server=(local)\\NetSDK;database=pubs;Trusted_Connection=yes "); 
                    SqlDataAdapter   myCommand   =   new   SqlDataAdapter( "select   *   from   Titles ",   myConnection);                 DataSet   ds   =   new   DataSet(); 
                    myCommand.Fill(ds,   "书名 ");                 MyDataList.DataSource   =   ds.Tables[ "书名 "].DefaultView; 
                    MyDataList.DataBind(); 
            } </script> <body   topmargin= "0 "   leftmargin= "0 "   marginwidth= "0 "   marginheight= "0 ">     <!--   #include   virtual= "/quickstart/aspplus/samples/webforms/customize/header.inc "   -->     <ASP:DataList   id= "MyDataList "   RepeatColumns= "2 "   RepeatDirection= "Horizontal "   runat= "server ">             <ItemTemplate>                 <div   style= "padding:15,15,15,15;font-size:10.5pt;font-family:宋体 ">                     <div   style= "font:12pt   宋体;color:darkred "> 
                            <i> <b> <%#   DataBinder.Eval(Container.DataItem,   "title ")   %> </i> </b> 
                        </div>                     <br>                     <b> 书名   ID: </b> <%#   DataBinder.Eval(Container.DataItem,   "title_id ")   %> <br> 
                        <b> 类别: </b> <%#   DataBinder.Eval(Container.DataItem,   "type ")   %> <br> 
                        <b> 出版商   ID: </b> <%#   DataBinder.Eval(Container.DataItem,   "pub_id ")   %> <br> 
                        <b> 价格: </b> <%#   DataBinder.Eval(Container.DataItem,   "price ",   "$   {0} ")   %> <p>                 </div>             </ItemTemplate>     </ASP:DataList>     <!--   #include   virtual= "/quickstart/aspplus/samples/webforms/customize/footer.inc "   --> </body> 
    </html>
      

  5.   

    就是多列显示。但是每个班级有几个“党员”不确定。所以没办法事先定义列。
    -------------------------------------------
    datatlist没用过(我刚学。最近才开始接触repeater,比较菜)
    ----------------------------------
    如果用css怎么写啊。可以贴点代码么
    大概写下。谢谢了
      

  6.   

    就是肯定可以了。是css实现 横的还是竖的
      

  7.   

    当然是可以的,repeater只是循环输出你放在模板列下的数据,而数据具体是怎么显示就看你css是怎么控制的了,如果想省事点可以选择使用datalist控件
      

  8.   

    如果用CSS怎么写啊。可以贴点代码么
    给个大概样子。谢谢了
      

  9.   

    用ul li
    让li float:left宽度等其他样式自己定义下
      

  10.   


    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
               List<aTagInfo> list = new List<aTagInfo>() { 
             new aTagInfo(){Href="http://www.sina.com",ClassName="selected",Text="有效房源"},
             new aTagInfo(){Href="http://www.163.com",ClassName=null,Text="待上架"},
             new aTagInfo(){Href="http://www.163.com",ClassName=null,Text="即将过期"},
             new aTagInfo(){Href="http://www.163.com",ClassName=null,Text="过期房源"},
             new aTagInfo(){Href="http://www.163.com",ClassName=null,Text="被投诉房源"}
            };
                DataList1.DataSource = list;
                DataList1.RepeatColumns = list.Count;
                DataList1.DataBind();
            }
        }
        <asp:DataList ID="DataList1" runat="server" RepeatDirection="Horizontal">
            <ItemTemplate>
                <div>
                    <a href="<%#((aTagInfo)Container.DataItem).Href%>">
                        <%#((aTagInfo)Container.DataItem).Text%></a>
                </div>
            </ItemTemplate>
        </asp:DataList>
      

  11.   

    可以的     个人比较喜欢 repeater 自由一些   不过 DataList  也行  
      

  12.   

    datalist控件吧 方便点  找个例子看下  很容易上手
      

  13.   

    [可以的啊 用css控制啊 repeater怎么显示都可以的