大家好,我想用DataList实现每绑定5个数据项后加条水平线

mohugomohu 2009-03-07 04:14:09
数据1 数据2 数据3 数据4 数据5

-----------有条水平线-------------

数据6 数据7


怎么弄呢?
...全文
130 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
甜苦瓜儿 2009-03-12
  • 打赏
  • 举报
回复
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试一下

mohugomohu 2009-03-07
  • 打赏
  • 举报
回复
数据1 数据2 数据3 数据4 数据5

-----------有条水平线-------------

数据6 数据7
-----------(这里也有边框了。这不是我想要的啊!)
我姓区不姓区 2009-03-07
  • 打赏
  • 举报
回复
参考:

<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();
}
}

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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