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=

随便看看

快速打造 react 后台管理系统

前言我相信许多小伙伴可能会满足开发后台管理系统的要求,那么我们如何快速完成这一要求?本文将记录以React为起点创建基本管理系统模板的过程,以加深对React技术堆栈和项目实践的理解。我希望开发这样的项目对每个人都有帮助。如果文章中有错误和错误,也请看小伙伴的评论。提前感谢您的项目介绍。React admin是基于R快速创建React应用脚手架而构建的...

Windows 7集成IE11(离线安装包、补丁)

当Win7系统需要集成IE11时,我们需要提前输入六个补丁KB2731771、KB2786081、KB2834140、KB2670838、KB2729094、KB2533623332位★ 百度网盘64位★ 百度网盘。我们需要输入这六个补丁才能更改IE11。此外,我们还需要32位的IE11离线安装包★ 百度网盘64位★ 百度网盘。这六个补丁是安装IE11所必需...

windows server2012 nVME和网卡等驱动和不识别RAID10问题

安装2012--不识别M.2nVME,下载官方驱动程序,并将其注入没有多个驱动程序的系统--添加ITSK通用驱动程序:|Win8012R2.x64网卡驱动程序无法打开--提取官方驱动程序EXE文件以添加网卡驱动程序不识别SATARAID10--超过2T,最大Legacy为2T。...

Visual studio之C#实现数字输入模拟键盘

所以我想自己实现软键盘。这篇文章是来做记录的。在Load event表单中,添加所有标签控件的click event mybutton _ clicked,privatevoidlazerctrl _ Load{//注册键盘,单击事件keyb1。单击+=newEventHandler;keyb2。单击+=newEventHandler,keyb3。单击++=...

将txt、csv等文本文件导入Hive

将txt、csv等文本文件导入Hive目录将txt、csv等文本文件导入Hive00.数据在虚拟机外01.启动hadoop、hdfs02.将文件放置在hdfs目录下03.登录hive并进入指定数据库04.根据文件创建表05.执行导入语句00.数据在虚拟机外如果数据在虚拟机内,请跳过此步,直接执行接下来的操作。...

微信小程序生成带参数的二维码(小程序码)独家asp.net的服务端c#完整代码

1) 我第一次使用wx。小程序端请求调用API,发现这是一个坑!@-_~Page:'pages/index/index',//在此处填写要跳转到的小程序页面。你不能在它前面添加/oh。发布后必须为1024页//小程序代码的边长,以像素为单位,范围[2801280]},标头:{'content-type':“application/json;charset=U...