Repeater控件用法

摘要:
在ASP.NET中最常用的数据绑定方法就是Repeater了,不仅因为使用简单,而且Repeater轻量级,没有VIEWSTATE,深受开发者亲睐。本片博客就来介绍Repeater的使用方法和注意事项。在后台.cs文件中的代码如下:protectedvoidPage_Load{stringconnStr=@"server=.\SQLEXPRESS;database=Test;uid=sa;pwd=123456";SqlConnectionconn=newSqlConnection;try{conn.Open();SqlCommandcmd=newSqlCommand;SqlDataReadersdr=cmd.ExecuteReader();DataTabledt=newDataTable();dt.Load;rep.DataSource=dt;rep.DataBind();}catch{throwex;}}前台页面放一个Repeater控件,添加一个 模板,如下:<%#eval%>、<%#eval%>、<%#eval%>用Eval表达式绑定字段,进行展示。所以需要在Repeater绑定之前做一些事情。="rep"runat="server"onitemdatabound="rep_itemdatabound">

在ASP.NET中最常用的数据绑定方法就是Repeater了,不仅因为使用简单,而且Repeater轻量级,没有VIEWSTATE,深受开发者亲睐。本片博客就来介绍Repeater的使用方法和注意事项。

一、准备数据  

在数据库中创建一张表,具体的sql脚本如下:

createdatabaseTest

go

createtablestudents

(

IDintidentity(1,1)primarykey,

[Name]nvarchar(20)notnull,

Sexintnotnull-- 1:male 0:female

)

insertintostudents(Name,sex)values('Frank',1);

insertintostudents(Name,sex)values('Caroline',0);

insertintostudents(Name,sex)values('Tom',1);

insertintostudents(Name,sex)values('Jack',1);

创建后的效果如下图所示:

image

二、在项目中测试  

在Visual Studio中新建一个WebApplication,进行测试。

image

在后台.cs文件中的代码如下:

protectedvoid Page_Load(object sender, EventArgs e)

{

string connStr = @"server=.\SQLEXPRESS;database=Test;uid=sa;pwd=123456";

SqlConnection conn = newSqlConnection(connStr);

try

{

conn.Open();

SqlCommand cmd = newSqlCommand("select * from students", conn);

SqlDataReader sdr = cmd.ExecuteReader();

DataTable dt = newDataTable();

dt.Load(sdr);

rep.DataSource = dt;

rep.DataBind();

}

catch (Exception ex)

{

throw ex;

}

}

前台页面放一个Repeater控件,添加一个<ItemTemplate>模板,如下:

<asp:RepeaterID="rep"runat="server"onitemdatabound="rep_ItemDataBound">

<ItemTemplate>

<%#Eval("ID") %><%#Eval("Name") %><%#Eval("Sex") %>

<br/>

</ItemTemplate>

</asp:Repeater>

用Eval(string expression)表达式绑定字段,进行展示。运行结果如图:

image

我们需要把表示性别的1和0转换成有意思的文字让人看。所以需要在Repeater绑定之前做一些事情。

具体代码如下:

// 绑定之前显示男女

protectedvoid rep_ItemDataBound(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)

{

DataRowView drv = (DataRowView)e.Item.DataItem;

Label lbl = (Label)e.Item.FindControl("lblSex");

if (drv["Sex"].ToString() == "1")

{

lbl.Text = "";

}

else

{

lbl.Text = "";

}

}

页面只需稍作更改即可:

<asp:RepeaterID="rep"runat="server"onitemdatabound="rep_ItemDataBound">

<ItemTemplate>

<%#Eval("ID") %><%#Eval("Name") %><asp:LabelID="lblSex"runat="server"Text=""></asp:Label>

<br/>

</ItemTemplate>

</asp:Repeater>

最后运行效果如图所示:

image

免责声明:文章转载自《Repeater控件用法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇perl语言 入门(转)Mysql 实现分页功能下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Matlab高级教程_第二篇:Matlab相见恨晚的模块_02_并行运算-1

3 MATLAB2009之后,并行计算工具箱和并行计算服务退出。通过PCT和DCS,用户可以实现基于多核平台、多处理器平台和集群平台的多个并行计算任务。除了支持上述通用功能外,PCT还增加了对GPU单元的支持。现在来看彼此已经太晚了:用parfor并行化for循环。在编程中,使计算量最小化的代码总是一个循环。7 parpool命令在不启动并行池的情况下配置并...

【转】MUD教程--巫师入门教程4

在MUD中,为了解决定时触发某种现象,一般有两种方法,一种是通过call_out()延时呼叫,另一种就是通过心跳。于是,对于要跨起离线前后的象做牢这类的事,大多都是采用condition。附:由于大多数MUD里的心跳是每两秒调一次,5+random是5至14次,因此可以看出每一个condition被调用的时间是平均19秒。然后它会按照condition的名字...

解决IDEA打包出现中文乱码的问题

解决方案:1.打开IDEA文件中的设置。...

ios 苹果和百度地图的相关使用

同时由于苹果使用的是高德,不会像谷歌地图一样在国内乌龟一样的访问速度,确实做一些地图相关的东西,非常有吸引力。只是实现了显示一个百度地图的view。百度地图使用的是Objective-C++,这意味这必须要有一个.mm文件。...

pycharm最新版本激活码(永久有效) python安装教程

输入python以查看当前版本的python。您可以输入“print'helloworld”并单击下载以启动PyCharm://pan.baidu.com//1eVdm4dUPKn3ZY_Xj kqNXw提取代码:l83f2,下载破解补丁(版本2018.3.5)下载链接至地址:...

windows下如何查看和修改MySQL的端口号

更改为要设置的新端口号。4.在桌面上找到“我的电脑”,右键单击并选择“管理”5.找到“服务和应用程序”并双击6.继续双击“服务”7.在列表中找到“MySQL”,右击并选择“重新启动”8.等待重新启动完成,然后按照我们刚才用来查看MySQL端口号的方法查看更改是否成功。如图所示,3396是我更改的端口号。...