使用Repeater显示数据

xubaoduo_77 2009-05-06 10:22:37
想使用Repeater显示数据。
显示的格式是
_______________________________________________________________________

第一条记录 第二条记录 第三条记录
第四条记录
__________________________________________________________________________
想求一下HTML代码。
我使用数据绑定时,显示的格式都是这样的
______________________________________________
第一条记录
第二条记录
....
---------------------------------------------
也就是说让每条记录可以以横排显示出来
...全文
789 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
xubaoduo_77 2009-05-08
  • 打赏
  • 举报
回复
问题已经解决,所使用方法是15楼agpsy 兄弟的.
limii 2009-05-06
  • 打赏
  • 举报
回复

<asp:DataList runat="server" id="DataList1" RepeatColumns="3">
lzzz999 2009-05-06
  • 打赏
  • 举报
回复

加表格
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<table>
<tr>
<td><%# Eval("第一条记录") %></td>
<td><%# Eval("第二条记录") %></td>
<td><%# Eval("第三条记录") %></td>
</tr>
<tr>
<td colspan="3"><%# Eval("第四条记录") %></td>
</tr>
</table>
</ItemTemplate>
</asp:Repeater>

fivecapable 2009-05-06
  • 打赏
  • 举报
回复
加表格
cntenger 2009-05-06
  • 打赏
  • 举报
回复

让Repeater显示多列的2种方法 方法1.
<table>
<tr>
<asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound">
<ItemTemplate>
<td>
<%#DataBinder.Eval(Container.DataItem,"something")%>
</td>
</ItemTemplate>
</asp:Repeater>
</tr>
</table>
即:将Repeater嵌入表格的一行中,然后在ItemDataBound事件中添加:e.Item.Controls.Add(new LiteralControl("</tr><tr>"));
方法2.
<asp:Repeater runat="server" ID="repeater1" OnItemDataBound="Repeater1_ItemDataBound">
<HeaderTemplate>
<table width="100%" border="0" align="center">
<tr>
</HeaderTemplate>
<ItemTemplate>
<td>
<%#Eval("something")%>
</td>
</ItemTemplate>
<FooterTemplate>
</tr></table>
</FooterTemplate>
</asp:Repeater>
即:将Repeater的ItemTemplate在表格的一行中处理,然后同样在在ItemDataBound事件中添加:e.Item.Controls.Add(new LiteralControl("</tr><tr>"));

方法1与方法2殊路同归,效果一样,但是我本人比较喜欢第二种。

补充:方法1与方法2虽然都可以实现页面效果,但是并不是完美无缺。在出现以下绑定代码时
<ItemTemplate>
<td>
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="link" Text='<%# Eval("CategoryName") %>' CommandArgument='<%# Eval("Id") %>'></asp:LinkButton>
</td>
</ItemTemplate>
如果点击LinkButton1,哪么页面样式又会返回初始时样式,,怎么办呢?解决办法就是在td之后添加Literal控件,让Literal控件内容根据需要动态生成相应的html标记,这样控件状态就会一直保持下去。并且可以由你自由处理各种事件了。

lacie 2009-05-06
  • 打赏
  • 举报
回复
Repeater里加表格
bhbhxy 2009-05-06
  • 打赏
  • 举报
回复
public int i=1;

<asp:Repeater ID="rp1" runat="server">
<ItemTempLate>
<%if(i%3==0) {%>
<div style="float:left"><%# Eval("Data") %></div></br>
<%}%>
<%else {%>
<div style="float:left"><%# Eval("Data") %></div>
<%} i++;%>
</ItemTempLate>
</asp:Repeater>

还有一种方法是用DIV限定宽度,宽度不够时会自动折行,这种方法比较简单
蓝海D鱼 2009-05-06
  • 打赏
  • 举报
回复
你可以加个模板 在模板里面放什么都行, 显示 绑定数据源的每行的数据

<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<br>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"CustomerID") %>' ></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"CompanyName") %>' ></asp:TextBox>
<asp:TextBox ID="TextBox3" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"ContactName") %>' ></asp:TextBox>
<asp:TextBox ID="TextBox4" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"ContactTitle") %>' ></asp:TextBox>
<br>
</ItemTemplate>
</asp:Repeater>
nosuchtracter 2009-05-06
  • 打赏
  • 举报
回复
每行只显示一列数据不就可以了?
萤火架构 2009-05-06
  • 打赏
  • 举报
回复
参考http://www.cnblogs.com/jizhong/articles/1235348.html
cntenger 2009-05-06
  • 打赏
  • 举报
回复
没搞过,先顶
萤火架构 2009-05-06
  • 打赏
  • 举报
回复
DataList可以

Repeater好像没有属性设置
wuyq11 2009-05-06
  • 打赏
  • 举报
回复
RepeatColumns="3"
<table>
<tr>
<td><%# Eval("") %></td>
</tr>
<tr>
</table>
xubaoduo_77 2009-05-06
  • 打赏
  • 举报
回复
我知道要使用HTML元素来编写,我想要的就是这个HTML的代码.
皓月明 2009-05-06
  • 打赏
  • 举报
回复
用样式控制就可以了
agpsy 2009-05-06
  • 打赏
  • 举报
回复
用li就可以了
<asp:Repeater runat="server" ID="rptTopPrice" >
<ItemTemplate>
<li><span class="tit"><a href="price.aspx?kind=<%=Ptype%>"><%#StringExt.bSubstring(Eval("price_title").ToString(), 28)%></a></span><span class="addtime"><%#Eval("addtime","{0:M-dd}")%></span> </li>
</ItemTemplate>
</asp:Repeater>
然后给找个li定义css 主要是固定宽度,这样就可以根据总体宽度自动分成多行了。
http://www.m188.com/jc/这里的大连预算价格 就是这么实现的。
jianbo8807 2009-05-06
  • 打赏
  • 举报
回复
对 滴 repeater控件布局是自由的,
pumaadamsjack 2009-05-06
  • 打赏
  • 举报
回复
只想和楼主说的是

Repeater只是帮你绑定数据,显示数据。至于怎么显示完全是你控制的啊...
Repeater外边用的什么元素,是ol ul 还是 div table 这些才是具体决定html显示的问题啊。。
Adechen 2009-05-06
  • 打赏
  • 举报
回复
RepeatColumns="3"

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧