首先说明一下我是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进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。