前面学习了HTML静态的网页编程,了解了其中的一些语法,但是自己感觉对Web编程掌握的还不够过瘾,于是跟着计划,开始了ASP.NET之旅。在写这篇ASP.NET博客之前之前,我想先将先比较一下ASP.NET与HTML的区别与联系。
一、联系与区别:HTML是在客户端编程,通常生成的是静态网页;ASP.NET是在服务器端编程,通常能生成动态网页。ASP.NET中的控件是HTML中的控件重新设计、封装起来的,也就是说ASP.NET中的控件是以HTML中的控件为基础。ASP.NET控件具有回送功能,够用ViewState维持控件的状态, HTML控件则不能,当点击页面的操作,其状态就会丢失。
在ASP.NET的学习过程中,其控件的学习和使用占了很大的一部分,今天,我说一下控件Repeater控件的使用,用它来绑定后台数据,然后在客户端(浏览器)上显示出来!
二、 Repeater控件
1、用途:使用模板循环显示数据。
2、包含的模板:
三、示例
我用vs2012的ASP.NET Web窗体应用程序编写的实例。
1、内容介绍
将数据库中Person表中的信息选出来,然后用Repeater控件在客户端显示出来。下图是我Sqlser数据库中person表中的信息。
1:将数据库中的信息选出来并在后台绑定: 新建Web窗体应用程序,添加窗体,在窗体的Page_Load事件中添加如下代码。
protected void Page_Load(object sender, EventArgs e) { SqlConnection con = DB.createConnection(); SqlDataAdapter sda = new SqlDataAdapter(); string sql="select * from person "; sda.SelectCommand = new SqlCommand(sql, con); DataSet ds=new DataSet(); sda.Fill(ds, "per"); this.Repeater1.DataSource=ds.Tables["per"]; Repeater1.DataBind(); }
2:用控件Repeater的模板
<asp:Repeater ID="Repeater1" runat="server"> <ItemTemplate> <p align="center"> <%# DataBinder.Eval(Container.DataItem,"pID") %> <%# DataBinder.Eval(Container.DataItem,"personName") %> <%# DataBinder.Eval(Container.DataItem,"personSex") %> </p> </ItemTemplate> </asp:Repeater>
3:显示效果如下
4:
<asp:Repeater ID="Repeater1" runat="server"> <AlternatingItemTemplate> <p align="center"> <font color="blue"> <%# DataBinder.Eval(Container.DataItem,"pID") %> <%# DataBinder.Eval(Container.DataItem,"personName") %> <%# DataBinder.Eval(Container.DataItem,"personSex") %></font> </p> </AlternatingItemTemplate> </asp:Repeater>
显示效果如下,结构只显示2、4、6、9列,这就是所谓的交叉显示。
最后,我将五个模板一块使用,前台代码如下
<asp:Repeater ID="Repeater1" runat="server"> <HeaderTemplate> <h3 align="center">页眉模板</h3> </HeaderTemplate> <ItemTemplate> <p align="center"> <font color="blue"> <%# DataBinder.Eval(Container.DataItem,"pID") %> <%# DataBinder.Eval(Container.DataItem,"personName") %> <%# DataBinder.Eval(Container.DataItem,"personSex") %></font> </p> </ItemTemplate> <AlternatingItemTemplate> <p align="center"> <font color="blue"> <%# DataBinder.Eval(Container.DataItem,"pID") %> <%# DataBinder.Eval(Container.DataItem,"personName") %> <%# DataBinder.Eval(Container.DataItem,"personSex") %></font> </p> </AlternatingItemTemplate> <SeparatorTemplate> <hr color="red" size="1" /> </SeparatorTemplate> <FooterTemplate> <h3 align="center">页脚模板</h3> </FooterTemplate> </asp:Repeater>
显示效果图如下
这就是利用控件将后台数据库中的信息用浏览器显示出来的方法,其实不光Repeater控件,像DataList,GridView,CheckBoxList、DropDownList等等都能将数据库中的信息加以绑定然后再在浏览器中显示出来,后面我会一一介绍,敬请期待!!
Atas ialah kandungan terperinci 《ASP.NET》数据的绑定—Repeater图文详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!