文章教程

8.4常用控件数据绑定

8/31/2020 9:52:39 PM 人评论 次浏览

8.4 常用控件数据绑定

这里的常用控件指的是将一个控件绑定到多个数据元素,通常是数据库中的多个记录,都是基于列表的绑定。使用这些控件来显示数据的具体步骤可以分为以下三步:

● 将用于显示数据的Web服务器控件添加到ASP.NET页面中。

● 将数据源对象赋给控件的DataSource属性。

● 执行控件的DataBind方法。

8.4.1 DropDownList控件的数据绑定

DropDownList控件是一个下拉式的菜单,其功能是可以让用户在提供的一组选项中选择单一的值。DropDownList控件实际上是列表项的容器,这些列表项都属于ListItem类型。因此在编程处理列表项时,可以使用Item集合。当将数据源绑定到DropDownList控件上时,下拉列表框的事件被触发,数据就在DropDownList控件的下拉列表中显示出来。

【实例8-7】绑定到DropDownList控件

本实例实现用户选择DropDownList下拉列表中的选项,在页面显示相应的选择值,具体实现步骤如下:

01 启动Visual Studio 2012,创建一个ASP.NET Web空应用程序,命名为“实例8-7”。

02 在“实例8-7”中创建一个名为Default.aspx的窗体。

03 单击网站的目录下的Default.aspx文件,进入“视图编辑”界面,打开“源视图”,在编辑区中<form></form>标记之间编写如下关键代码:

alt

上面的代码中第1行添加了一个服务器下拉列表控件DropDownList1并将AutoPostBack属性设置为true自动回传到服务器;同时添加了6个选项,并设置控件选项改变事件SelectedIndexChanged。第6行添加一个服务器标签控件Label1。

04 单击网站目录下的Default.aspx.cs文件,编写代码如下。

alt

上面的代码中第1行定义处理下拉列表控件选中项改变事件SelectedIndexChanged的方法。第2行调用下拉列表控件DropDownList1的SelectedValue属性将选中项的值显示在标签控件的文本上。

05 按快捷键Ctrl+F5运行程序,效果如图8-6所示。

alt

图8-6 运行结果

8.4.2 ListBox控件的数据绑定

ListBox控件允许用户从预定义的列表中选择一项或多项。它与DropDownList控件类似,不同之处在于它可以允许用户一次选择多项。ListBox控件的数据绑定与DropDownList一样,都是通过将数据源赋给DataSource属性,然后再执行DataBind方法。

【实例8-8】ListBox控件的数据绑定

本实例把ListBox控件绑定到SqlCommand对象执行SQL查询tb_News表中新闻标题的结果,具体实现步骤如下:

01 启动Visual Studio 2012,创建一个ASP.NET Web空应用程序,命名为“实例8-8”。

02 在“实例8-8”中创建一个名为Default.aspx的窗体。

03 单击网站的目录下的Default.aspx文件,进入“视图编辑”界面,打开“源视图”,在编辑区中<form></form>标记之间编写如下关键代码:

alt

上面的代码添加了一个服务器下拉列表控件ListBox1并设置它的大小。

04 单击网站目录下的Default.aspx.cs文件,编写代码如下:

alt

上面代码中第1行定义处理页面Page加载事件的方法Load。第2行判断当前加载的页面如果不是回传的页面,第3行设置连接字符串constr。第4行创建Sql语句查询的字符串str。第5行创建一个SqlConnection对象con并传递参数为连接字符串constr。第6行通过SqlConnection对象的open方法打开数据库连接。第7行实例化了一个SqlDataAdapter类型的对象sda并将constr和str作为参数传递。第8行实例化一个DataSet类型的对象ds。第9行调用sda的填充数据集的方法Fill,将查询结果保存到数据集中的News表中。第10行使用列表控件ListBox1的DataSourc属性将数据集对象ds作为数据源。第11行调用列表控件ListBox1的DataTextField属性设置显示在控件中文字为数据表的Tilte字段的值。第12行调用列表控件ListBox1的DataValueField属性设置对应显示在控件中文字项的值为数据表中的ID字段的值。第13行调用列表控件ListBox1的DataBind方法在页面中显示出绑定的数据。

05 Ctrl+F5运行程序,运行结果如图8-7所示。

alt

图8-7 运行结果

8.4.3 RadioButtonList控件的数据绑定

RadioButtonList控件是一个单选按钮列表框控件,也即是一组单选按钮控件的集合。通过将数据绑定到RadioButtonList控件后,用户可以选择按钮集合中的某一个值。

【实例8-9】绑定到RadioButtonList

本实例将使用第7章中创建的db_news数据库里的tb_News数据表,实现选择RadioButtonList控件中的某一个新闻的名称,就在DataGrid控件动态显示该新闻的相应信息。

01 启动Visual Studio 2012,创建一个ASP.NET Web空应用程序,命名为“实例8-9”。

02 在“实例8-9”中创建一个名为Default.aspx的窗体。

03 单击网站的目录下的Default.aspx文件,进入“视图编辑”界面,打开“源视图”,在编辑区中<form></form>标记之间编写如下关键代码:

alt

上面的代码中第1行添加一个服务器单选按钮列表控件RadioButtonList1,设置自动回传服务器,水平布局和处理控件选择项改变事件SelectedIndexChanged。第2行~第7行给控件添加6个单选按钮选项。第10行添加一个服务器列表控件DataGrid1。

04 单击网站目录下的Default.aspx.cs文件,编写代码如下:

alt

代码说明:第1行定义处理单选按钮列表控件RadioButtonList1选中项改变事件SelectedIndexChanged的方法。第2行设置连接字符串constr。第3行获取单选按钮列表控件选中项的值。第4行创建Sql语句查询的字符串str,查找数据表中书名为选中项值的数据信息。第5行创建一个SqlConnection对象con并传递参数为连接字符串constr。第6行通过SqlConnection对象的open方法打开数据库连接。第7行实例化了一个SqlDataAdapter类型的对象sda并将sqlstr和con作为参数传递。第8行实例化一个DataSet类型的对象ds。第9行调用sda的填充数据集的方法Fill,将查询结果保存到数据集中的News表中。第10行使用列表控件DataGrid1的DataSourc属性将数据集对象ds作为数据源。第11行调用列表控件DataGrid1的DataBind方法在页面中显示出绑定的的数据。

05 按快捷键Ctrl+F5运行程序,运行结果如图8-8所示。用户选择新闻名称,列表显示相应的新闻信息。

alt

图8-8 运行结果

教程类别