您好,登录后才能下订单哦!
首先说明一下我是asp.net菜鸟,写文章纯粹是为了把学过的东西记录下来,方便以后忘记的时候可以回头再来看看。
这里讲的Repeater控件并不是详解,而是一个最基础的使用,下面根据我写的小例子来讲。
数据库为自己写的TestDatabase。
前台代码为
<asp:Repeater ID="Repeater1" runat="server" >
<HeaderTemplate>
<table id="Table1" >
<tr >
<th>球员ID</th>
<th>球员姓名</th>
<th>所在球队</th>
<th>球衣号码</th>
<th>场上位置</th>
<th>出生日期</th>
<th>身高</th>
<th>体重</th>
<th>是否退役</th>
<th>投篮命中率</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr >
<td><asp:label id="label1" runat="server" text='<%#Eval("PL_ID")%>'/> </td>
<td><asp:label id="label3" runat="server" text='<%#Eval("PL_NAME")%>'/> </td>
<td><asp:label id="label2" runat="server" text='<%#Eval("TEAM") %>'/> </td>
<td><asp:label id="label4" runat="server" text='<%#Eval("PL_NO")%>'/> </td>
<td><asp:label id="label5" runat="server" text='<%#Eval("POSITION")%>'/> </td>
<td><asp:label id="label6" runat="server" text='<%#IsNull2NA(Eval("BIRTHDAY").ToString())%>'/> </td>
<td><asp:textbox id="label7" runat="server" text='<%#IsNull2NA(Eval("HEIGHT").ToString())%>'/> </td>
<td><asp:label id="label8" runat="server" text='<%#IsNull2NA(Eval("WEIGHT").ToString())%>'/> </td>
<td><asp:RadioButton ID="RadioButton1" runat="server" Checked='<%#IsTOrF(Eval("retired").ToString())%>' Enabled="false"/></td>
<td><asp:label id="label9" runat="server" text='<%#Eval("shoot_per")%>'/></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>针对上面的代码我有两点要说明,
1、Repeater的标签元素:其中我们看到了<HeaderTemplate></HeaderTemplate>,<ItemTemplate></ItemTemplate>,
<FooterTemplate></FooterTemplate> ,这几个标签,如果不加<HeaderTemplate> 和<FooterTemplate> 这两个标签,用<ItemTemplate> 包在最外面的话,将会出现下面情况
所以要按照我写的用<HeaderTemplate></HeaderTemplate> 把<table> 和<th>的内容都包含进去
2、关于<%# Eval() %>引用后台代码:因为我调用这个的时候是为了给Text属性赋值,但是由于没有经验,我在 <%# Eval() %>周围加上了"" ,实际上应该是'',这个大家一定要注意。
后台代码为
protected void Page_Load(object sender, EventArgs e)
{
string conn = WebConfigurationManager.ConnectionStrings["TestDatabaseConnectionString"].ConnectionString;
SqlConnection myConn = new SqlConnection(conn);
myConn.Open();
string sql = "select * from NBA_PLAYER_TBL where PL_NO>'12'";
SqlDataAdapter adp = new SqlDataAdapter(sql, conn);
DataSet ds = new DataSet();
adp.Fill(ds);
Repeater1.DataSource = ds;
Repeater1.DataBind();
myConn.Close();
}
public string IsNull2NA(string inStr)
{
if (inStr == "")
{
return "NA";
}
return inStr;
}
public Boolean IsTOrF(string inC)
{
if (inC== 'T'.ToString())
{
return true;
}
return false;
}后台代码相对来说是比较基础的内容,只要记得要有Repeater的DataBind()操作就行了。
结果

做的比较丑,但是基本功能都已经实现。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。