ASP.NET:数据库绑定控件DataBind方法

asp.net|控件|数据|数据库

    DataBind方法是ASP.NET中一个很重要的概念,几乎所有的控件都需要它控制数据的操作,它的作用是在为控件指定数据源后,执行数据绑定操作。在上一章的DataSet对象实例中我们已经使用过,利用这个方法为DataGrid控件绑定数据,即DataGrid.DataBind()。
    ASP.NET可以使用DataBind方法来绑定数据的控件除了DataGrid,Repeater,DataList三个专用的数据绑定控件以外,还有些数据集合性质的Web控件,包括DropDownList,ListBox等,用来指定的数据源一般为数组(ArrayList)、哈稀表(HashTable)、数据表(DataTable)、 数据视图(DataView)和DataReader等。

    下面我们利用这个方法为ListBox控件绑定数据源。

    首先建立实例运行环境。打开Visual Studio.NET 2003 ,新建一个Web项目,命名为DataCon,新建一个窗体,命名为LBDataBind.aspx。在LBDataBind.aspx窗体中添加一个ListBox控件,如图9.1所示。


图9.1  为LBDataBind.aspx添加ListBox控件

LBDataBind.aspx页面的主要HTML代码如下:
<form id="Form1" method="post" runat="server"> 
 <asp:ListBox id="ListBox1"  runat="server"></asp:ListBox>
</form>
在LBDataBind.aspx的逻辑代码文件(LBDataBind.aspx.vb)中的Page_Load事件过程代码如下:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        '在此处放置初始化页的用户代码
        Dim i, j As Int16  '声明两个整型变量,用于循环
        Dim rd As Random = New Random
        '声明一个随机变量,并实例化
        Dim str As String
        '声明一个字符串变量,用于生成的随机字符
        Dim arr As ArrayList = New ArrayList
        '声明一个数组,用来存放字符串
        For i = 1 To 20
            '执行外循环,每一次循环,生成一个项
            str = "第" & i & "项--"
            For j = 1 To 5
                '执行内循环,循环5次,
                '成生一个5个随机大写字母的字符串
                str += Chr(rd.Next(65, 90))
            Next
            arr.Add(str)
            '添加到数组中
            str = ""
        Next
        ListBox1.DataSource = arr
        '为LisBox1指定数据源
        ListBox1.DataBind()
        '使用DataBind方法,为控件绑定数据
End Sub
保存编译,运行结果如图9.2所示。


图9.2  LBDataBind.aspx运行结果

    在上面这个实例中,我们使用了一个ListBox控件,但是我们并没有设置<asp:ListItem>属性,为其添加项目。在LBDataBind.aspx的逻辑代码里,我们利用随机数生成了一个含有20个项的数组(ArryList),我们为ListBox1指定这个数组为数据源,并使用DataBind方法为其执行数据绑定,这样就利用编程的方式实现了ListBox控件的数据绑定操作。

    在上一节里,我们学习了<%# %> 语法,这里我们演示一下利用aspx文件的Page.DataBind 方法实现对整个页面的数据绑定。一旦aspx的整个页面被绑定后,页面内的数据都在监视之中。

    在DataCon Web项目里新建一个窗体,命名为PageDataBind.aspx。在PageDataBind.aspx里添加一个DropDownList控件,主要HTML代码如下:
<body MS_POSITIONING="GridLayout">
 <form id="Form1" method="post" runat="server">
 <FONT face="宋体">
<span style="BACKGROUND-COLOR: #cccccc">
请选择你最喜欢的体育运动:</span>
 <p>
 <asp:DropDownList
id="DropDownList1"
 runat="server"
 Width="104px"
Height="32px"
AutoPostBack="True">
    <asp:ListItem Value="跑步">跑步</asp:ListItem>
    <asp:ListItem Value="骑马">骑马</asp:ListItem>
    <asp:ListItem Value="射击">射击</asp:ListItem>
    <asp:ListItem Value="游泳">游泳</asp:ListItem>
    <asp:ListItem Value="踢足球">踢足球</asp:ListItem>
    <asp:ListItem Value="打篮球">打篮球</asp:ListItem>
    <asp:ListItem Value="打网球">打网球</asp:ListItem>
    <asp:ListItem Value="打乒乓球">打乒乓球</asp:ListItem>
    <asp:ListItem Value="打羽毛球">打羽毛球</asp:ListItem>
 </asp:DropDownList>
 <p>
 <span style="BACKGROUND-COLOR: #cccccc">你选择的是:<br>
 <%#  DropDownList1.SelectedValue %>
 </span>
 </FONT>
</form>
</body>
    我们设置DropDownList1的AutoPostBack属性为"True",即该控件具有自动响应事件的能力,当列表框中的选定项发生变化时,会自动回传服务器上,并执行.NET框架委托的事件过程SelectedIndexChanged。我们为DropDownList1_SelectedIndexChanged事件过程编写的代码如下:
Private Sub DropDownList1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DropDownList1.SelectedIndexChanged
        '整个事件过程就一条语句,在执行该语句后,本aspx页面就被数据绑定
         '当页面的数据变动时候,就可以利用<%# %>方法显示出来
Page.DataBind()
End Sub
保存编译,PageDataBind.aspx运行结果如图9.3所示。


图9.3  PageDataBind.aspx运行结果

    在上一章里我们已经学习了用DataTable为DataGrid控件提供DataBind数据源,在DataView 实例里,我们也利用DataView对象来为DataGrid控件提供DataBind数据源,这里就不再赘述,读者可以翻看前一章的实例代码,仔细推敲其中的奥妙。

时间: 2025-01-20 19:20:45

ASP.NET:数据库绑定控件DataBind方法的相关文章

ASP.NET:数据库绑定控件入门

asp.net|控件|数据|数据库     数据绑定控件是Web控件的一部分,但其与数据库紧密结合的,在Web应用程序中的应用十分广泛,所以尤其显得重要.在本章中,我们将详细介绍ASP.NET技术中数据绑定控件的用法.     9.1  数据库邦定控件入门     在学习上一章时候,我们接触到了DataGrid控件,在实例中我们利用DataAdapter从数据库中读取数据,存放到DataSet里,然后绑定到DataGrid控件里,由DataGrid控件显示出来.通过数据绑定控件的不同设置,可以快

ASP.NET:数据库邦定控件DataBind方法

asp.net|控件|数据|数据库 在上一节中我们介绍了<%#  %> 语法,这种情况是Web 窗体有了明确的数据源,即Page.DataBind.这一小节我们来了解DataBind方法.     DataBind方法是ASP.NET中一个很重要的概念,几乎所有的控件都需要它控制数据的操作,它的作用是在为控件指定数据源后,执行数据绑定操作.在上一章的DataSet对象实例中我们已经使用过,利用这个方法为DataGrid控件绑定数据,即DataGrid.DataBind().     ASP.N

asp.net的GridView控件使用方法大全_实用技巧

前台.aspx 复制代码 代码如下: <asp:Label ID="tplb" runat="server" Text="总页数:"></asp:Label> <asp:Label ID="lblPageCount" runat="server" Text=""></asp:Label> <asp:Label ID="cur

灵活掌握asp.net中gridview控件的多种使用方法(上)_实用技巧

灵活使用asp.net中gridview控件的方法有很多种,本文内容很富,希望大家都能有所收获. 1.GridView无代码分页排序: 效果图: 小提示: 1.AllowSorting设为True,aspx代码中是AllowSorting="True": 2.默认1页10条,如果要修改每页条数,修改PageSize即可,在aspx代码中是PageSize="12". 3.默认的是单向排序的,右击GridView弹出"属性",选择AllowSort

数据库-ASP中的&amp;amp;lt;asp:Repeater&amp;amp;gt;控件问题

问题描述 ASP中的<asp:Repeater>控件问题 各位大神们好,我在项目中使用asp:Repeater控件,去显示我数据库里面的数据,可是运行程序的时候显示: 我把代码给大家看一下,请大家帮我看看是哪里出了错误 (1)前台页面数据绑定: 序号 I级机构 II级机构 III级机构 <%#Eval("Id") %>> <%#Eval("Csk_no.Cfk_no.First_kind_name") %>> <

使用 ASP+ 列表绑定控件(上)

asp+|控件 简介       Repeater.DataList和DataGrid控件构成ASP+页面框架中System.Web.   UI.WebControls名称空间内的相关Web控件集.这些控件使HTML显示所绑   定列表或数据源的内容.因此,将它们统称为"列表绑定控件".      与框架中的其它 Web       控件类似,这些控件提供一致的编程模型并封装一个独立于浏览器的   表示逻辑.这些特性使开发人员能够针对对象模型编程而不用必须掌握与   HTML 相关的那

使用 ASP+ 列表绑定控件 (转自ms 二)

asp+|控件 DataGrid 控件DataGrid 控件使您可以生成数据源格式丰富的列表表示.此外,它还支持随其它操作选择项目. 本节的四个示例使用包含有关书名信息(标题.标题 ID.作者.价格和出版日期)的表.全部数据都用 TitlesDB.xml 中的 XML 予以维持.在建立页面来表示此表的内容并选择书籍时,这些示例遵循增量方法.代码列表包含黑体文本,以表明一个示例构建于以前示例时所作的更改. 截自 TitlesDB.xml: <root><schema id="Do

使用 ASP+ 列表绑定控件 (转自ms 一)

asp+|控件 使用 ASP+ 列表绑定控件Nikhil KothariMicrosoft Corporation 2000年7月 摘要: 说明 ASP+ Repeater.DataList 和 DataGrid 服务器控件.这些控件能够实现一个根植于数据源的,基于 HTML 的应用程序用户界面.讨论与这些控件有关的概念并概要介绍使用这些控件的基本示例. 目录简介 列表绑定控件是如何工作的? Repeater 控件 DataList 控件 DataGrid 控件 Repeater.DataLis

灵活掌握asp.net中gridview控件的多种使用方法(下)_实用技巧

继续上篇文章的学习<灵活掌握asp.net中gridview控件的多种使用方法(上)>,在此基础上巩固gridview控件的操作使用,更上一层楼. 11.GridView实现用"..."代替超长字符串:效果图:   解决方法:数据绑定后过滤每一行即可 for (int i = 0; i <= GridView1.Rows.Count - 1; i++) { DataRowView mydrv; string gIntro; if (GridView1.PageInde