纸上得来终觉浅,绝知此事要躬行。

 

Repeater控件应用示例

<%# %>符号之间的语句表示数据绑定表达式,Container.DataItem则表示控件当前绑定的项。
还可以使用其他方式进行数据绑定,最常用的是<%#DataBinder.Eval (Container.DataItem, "名称")%>,其中,DataBinder是System.Web.UI命名空间定义的一个类;Eval是一个静态方法,它使用反射来计算数据绑定表达式,传递给DataBinder.Eval的第二个参数指定了当前记录中的字段名;可选的第三个参数是格式化字符串,即固定按照什么格式将这个字段转化成一个字符串。

前台代码 
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="RepeaterControl.aspx.cs"
Inherits
="RepeaterControl" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Repeater控件应用示例</title>
</head>
<body>
<form id="form1" runat="server">
<div>
&lt;%# %&gt;符号之间的语句表示数据绑定表达式,Container.DataItem则表示控件当前绑定的项。<br />
还可以使用其他方式进行数据绑定,最常用的是
&lt;%#DataBinder.Eval (Container.DataItem, "名称")%&gt;,其中,DataBinder是System.Web.UI命名空间定义的一个类;Eval是一个静态方法,它使用反射来计算数据绑定表达式,传递给DataBinder.Eval的第二个参数指定了当前记录中的字段名;可选的第三个参数是格式化字符串,即固定按照什么格式将这个字段转化成一个字符串。<br />
<br />
<asp:Repeater ID="MyRepeater" runat="server" OnItemCommand="MyRepeater_ItemCommand">
<HeaderTemplate>
<table border="1">
<tr>
<td>
作者
</td>
<td>
地址
</td>
<td>
联系
</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><%#DataBinder.Eval(Container.DataItem,"au_lname") %>
</td>
<td><%#DataBinder.Eval(Container.DataItem,"address") %>
</td>
<td>
<asp:Button ID="btBuy" runat="server" Text="联系" CommandArgument='<%#DataBinder.Eval(Container.DataItem,"au_lname") %>' />
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
<br />
<asp:Label ID="lbBuy" runat="server"></asp:Label></div>
</form>
</body>
</html>

 

后台代码 
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class RepeaterControl : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
SqlConnection myCon
= new SqlConnection("server=sony;database=Pubs;User Id=sa;pwd=");
try
{
myCon.Open();
SqlCommand myCmd;
myCmd
= new SqlCommand("select * from Authors", myCon);
SqlDataReader reader
= myCmd.ExecuteReader();
this.MyRepeater.DataSource = reader;
this.MyRepeater.DataBind();
}
finally
{
myCon.Close();
}
}
}
protected void MyRepeater_ItemCommand(object source, RepeaterCommandEventArgs e)
{
this.lbBuy.Text=e.CommandArgument.ToString();
}
}

 

以上内容引自:http://www.cnblogs.com/hide0511/archive/2006/09/03/493480.html

posted on 2010-09-23 20:38  JRoger  阅读(395)  评论(0编辑  收藏  举报

导航