高分请教用repeater控件来显示象QQ空间中的相册那样的功能
我现在想用repeater控件来显示象QQ空间中的相册的那样的功能repeater控件最后显示出来的结果如下:
图片一 图片二 图片三 图片四 图片五
图片六 图片七 图片八 图片九 图片十
图片十一 图片十二 图片十三 图片十四 图片十五
图片十六 图片十七 图片十八 图片十九 图片二十
图片二十一 图片二十二 图片二十三 图片二十四 图片二十五
图片一是代表一张图片,用<img>控件来显示图片.
请问如果想达到以上的显示效果,该怎么做?谢谢
--------------------编程问答-------------------- protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (i % 5 == 0 && i > 0)
{
e.Item.Controls.Add(new LiteralControl(" </tr> <tr>"));
}
i++;
}
--------------------编程问答-------------------- repeater 有个属性,可以设置每一行显示多个信息,你查一下 --------------------编程问答-------------------- 能有具体一点的代码吗?谢谢 --------------------编程问答-------------------- protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (i % 5 == 0 && i > 0)
{
e.Item.Controls.Add(new LiteralControl(" </tr> 图片一 <tr>"));
}
i++;
} --------------------编程问答-------------------- 用div加li
<div style="width:100%;">
<asp:repeater id="re_aa" runat="server">
<itemtemplate>
<li style="width:19%;float:left"><img src='' /></li>
</itemtemplate>
</asp:repeater>
</div> --------------------编程问答-------------------- 关于图片的地址我是从数据库中读取出来的,楼上的这些个回答好象还是不能满足要求啊,有没有高手啊?SOS --------------------编程问答-------------------- up --------------------编程问答-------------------- 试试1楼的 --------------------编程问答--------------------
<div style="width:100%;">
<asp:repeater id="re_aa" runat="server">
<itemtemplate>
<li style="width:19%;float:left"> <img src='<%#Eval("imagesrc")%>' /> </li>
</itemtemplate>
</asp:repeater>
</div>
在cs文件里绑定这个repeater就可以了
sql="select * from imagetable";
dt=sqlhelper.executetable(sql);
re_aa.datasource=dt;
re_aa.databind(); --------------------编程问答-------------------- 楼上的做法是一行里显示一个图片吧,我是需要做成一行里显示多个图片, --------------------编程问答-------------------- repeater一行显示多个图片,从数据库中读取,参考一下:
http://hi.baidu.com/44498/blog/item/388a1f1969a78e70dbb4bdc3.html --------------------编程问答-------------------- 前台:
<asp:Repeater ID="Repeater2" runat="server">
<HeaderTemplate>
<table width="100%">
</HeaderTemplate>
<ItemTemplate>
<asp:PlaceHolder ID="PlaceHolder1" runat="server" Visible='<%# (Container.ItemIndex + 1) % 8 ==1 %>'>
<tr>
</asp:PlaceHolder>
<td >
<%# DataBinder.Eval(Container.DataItem, "imgname")%>
</td>
<asp:PlaceHolder ID="PlaceHolder2" runat="server" Visible='<%# (Container.ItemIndex + 1) % 8 ==0 %>'></tr> </asp:PlaceHolder>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
后台
protect void get_img()
{
sql="select imgname from tablename"
...
Repeater2=dt.DefaultView;
Repeater2.databind();
}
--------------------编程问答-------------------- 我用控件不求低级。用repeater不合适的时候为什么不用datalist呢? --------------------编程问答-------------------- datalist就可以达到你的目的,为什么非要repeater --------------------编程问答--------------------
你。。。。我都要无语了
<div style="width:100%;">
<asp:repeater id="re_aa" runat="server">
<itemtemplate>
<li style="width:19%;float:left"> <img src=' <%#Eval("imagesrc")%>' /> </li>
</itemtemplate>
</asp:repeater>
</div>
li的width是19%,float:left是什么意思你知道吗,就是每行显示5个,然后就换行 --------------------编程问答-------------------- 同意15楼的 同时建议用datalist --------------------编程问答--------------------
<asp:DataList ID="DataListImg" runat="server" RepeatColumns="4" Width="100%">
<ItemTemplate>
<div style="width: 160px; margin: auto; height: 130px; border: 1px solid gray;">
<div>
<p id="outer">
<a href='../SafeManage/ImageShow.aspx?id=<%#Eval("ID")%>'>
<img style="margin: auto; border: none; vertical-align: middle; text-align: center;
padding: 5px 5px 5px 5px; width: 150px; height: 120px;" src='<%# Eval("ARTICLE_URL")%>'
alt="" />
</a>
</div>
</div>
<div style="color: Gray; text-align: center; height: 20px;">
<a href='../SafeManage/ImageShow.aspx?id=<%#Eval("ID")%>'>
<%# Bll.WebManage.strCut(DataBinder.Eval(Container.DataItem, "TITLE").ToString(), 12)%>
</a>
</div>
</ItemTemplate>
</asp:DataList>
--------------------编程问答-------------------- --------------------编程问答-------------------- 怎么不行啊
补充:.NET技术 , ASP.NET