第9章 数据绑定与数据绑定控件
数据绑定控件
数据绑定控件 • 使用 GridView 控件进行数据绑定 – GridView 控件提供了两个用于绑定到数据的 选项: 选项: • 使用 DataSourceID 属性进行数据绑定,此 属性进行数据绑定, 选项让您能够将 GridView 控件绑定到数据 源控件。建议使用此方法, 源控件。建议使用此方法,因为它允许 GridView 控件利用数据源控件的功能并提 供了内置的排序、分页和更新功能。 供了内置的排序、分页和更新功能。 • 使用 DataSource 属性进行数据绑定,此选 属性进行数据绑定, 项使您能够绑定到包括 数据集和 数据读取器在内的各种对象。 数据读取器在内的各种对象。此方法需要为 所有附加功能(如排序、分页和更新) 所有附加功能(如排序、分页和更新)编写 代码。 代码。
数据绑定控件
– GridView 控件可对其关联数据源自动执行编 辑和删除操作, 辑和删除操作,使您无需编写代码即可启用编 辑行为。或者, 辑行为。或者,也可以以编程方式控制编辑和 删除数据的过程( 删除数据的过程(如在 GridView 控件绑定到 只读数据源控件的情况下)。 只读数据源控件的情况下)。
数据绑定控件 • 自定义 DetailsView 控件用户界面 – 与 GridView 控件一样,您可以自定义 控件一样, DetailsView 控件的用户界面,方法是使用 控件的用户界面, HeaderStyle、RowStyle、 、 、 AlternatingRowStyle、CommandRowStyle、 、 、 FooterStyle、PagerStyle 和 、 EmptyDataRowStyle 这样的样式属性。 这样的样式属性。
数据绑定控件 • 使用 GridView 控件编辑和删除数据 – 默认情况下,GridView 控件在只读模式下显 默认情况下, 示数据。但是,该控件还支持一种编辑模式, 示数据。但是,该控件还支持一种编辑模式, 在该模式下控件显示一个包含可编辑控件( 在该模式下控件显示一个包含可编辑控件(如 TextBox 或 CheckBox 控件)的行。您还可 控件)的行。 以对 GridView 控件进行配置以显示一个 Delete 按钮,用户可单击该按钮来删除数据源 按钮, 中相应的记录。 中相应的记录。
数据绑定和数据控件.
第9页
在上例中,我们首先用绑定表达式<%# SingleValueBindingStr + "1" %>直接嵌入到div标记中来设 置HTML标记中的显示值,然后通过绑定表达式和后台设置控件 属性两种方式绑定了TextBox控件的显示数据。
第10页
列表控件的数据绑定
列表控件有以下几种:DropDownList、ListBox、 CheckBoxList、RadioButtonList、BulletedList等等 可以通过编程的方式为控件对象增加多个数据项,也可以直接 在VWD2008环境提供的图形界面中编辑要显示的数据项列表。
第15页
在实际应用的时候,我们可以根据需要显示的数据类型,选择 要绑定的列类型并设置其映射到数据集的字段名称和呈现样式 (设置绑定列后GridView中将只显示映射列数据,否则系统将 默认以BoundField类型显示数据源表中的所有列) 见例题。
第16页
去除自动生成列的方法: 设置属性AutoGenerateColumns值为false
第17页
GridView控件中的其他类型的 绑定列
通过CommandField类型,并配合事件处理程序RowEditing、 RowUpdating、 RowDeleting、我们可以在GridView控件中完 成数据的编辑、修改、插入等操作。
<asp:GridView ID="GridView1" runat="server" Height="223px" Width="570px" AutoGenerateColumns="False"> <Columns> <asp:BoundField DataField="编号" HeaderText="编号" /> <asp:BoundField DataField="名称" HeaderText="名称" /> <asp:BoundField DataField="产地" HeaderText="产地" /> <asp:BoundField DataField="价格" HeaderText="价格" /> <asp:BoundField DataField="类型编号" HeaderText="类型编号" /> <asp:CommandField ShowEditButton="True" /> <asp:ButtonField ButtonType="Button" Text="删除" /> </Columns> </asp:GridView>
数据控件和数据绑定控件
1.2 Recordset对象的属性与方法
l BOF、EOF属性:如果当前记录位于Recordset对象的最后一个记录之 后,则EOF值为True,否则为False 。如果当前记录位于Recordset对象的 第一个记录之前,则BOF值为True,否则为False 。 使用BOF和EOF属性可确定Recordset对象是否包含记录,也可以判断 Recordset对象所指定的记录集的边界。 l RecordCount属性:指示Recordset对象中记录的总数,返回类型为长 整形。 l NoMatch属性:指示当使用Seek方法或Find方法进行查找时,是否找 到匹配的记录。当找到指定的记录时,返回值为True,否则返回值为 False。 l Fields属性:Recordset对象的Fields属性是一个集合,该集合包含 Recordset 对 象 的 所 有 Field ( 字 段 ) 对 象 。 每 个 Field 对 象 对 应 于 Recordset中的一列。使用Field对象的Value属性可设置或返回当前记录 的数据。 l Index属性:设置或返回表类型记录集中的当前索引名称,该索引名 称必须是已经定义的一个索引。设置或返回的值为字符串类型。
返回章首
1.1 数据控件
2、方法 l UpdateControls方法:将被绑定控件的内容恢复为其原始值,等效于 用户更改了数据之后决定取消更改。 l UpdateRecord方法:将被绑定控件的当前值保存到数据库中。 3、事件 l Error事件:通常是在代码运行中出现错误时触发该事件,如果未对 Error事件编写事件过程,Visual Basic将显示与该错误相关的信息。注意: 出现在 Form_Load 事件之前的错误是不可捕获的,也不会触发 Error 事 件。 l Reposition事件:当一条记录成为当前记录之后触发。Recordset对 象中的第一条记录成为当前记录,这时会触发Reposition事件,无论何 时只要用户单击Data控件上的某个按钮,或进行记录间的移动,或使用 了某个Move方法(如MoveNext)、Find方法(如FindFist)或任何其他 改变当前记录的属性或方法,均会触发Reposition事件。 l Validate事件:当一条记录成为当前记录之前触发。使用Delete、 Unload或Close操作之前会触发该事件。
实验九(数据源与数据绑定控件一)
实验九数据访问控件应用练习(1)一、实验目的1、掌握数据源控件和数据绑定控件的使用。
2、掌握使用GridView控件显示与修改数据的方法;掌握FormView控件的使用,理解设置控件外观的基本技巧。
说明:数据源控件SqlDataSource与AccessDataSource控件的使用方法。
(2)了解层次数据源控件XmlDataSource与StieMapDataSource控件的使用。
(3)掌握数据显示控件GridView与FormView控件的特点。
二、实验内容1、创建数据库并建立数据表。
在网站上创建一个名为student.mdf的数据库文件,其中包含一个数据表,表名为T_grade(7个字段,学号,姓名,性别,班级,数学,语文和英语)结构如图9-1所示,数据库及表创建后,输入一些数据记录。
图9-1 T_grade表结构2、使用上述的student.mdf数据库文件和T_grade表,采用GridView控件、FromView控件和SqlDataSource控件配合创建一个具有基本数据库管理功能(包括对数据库的增、删、改)的 应用程序。
要求:在default.aspx页面使用GridView显示所有数据,当单击GridView控件某行首“选择”链接按钮时,页面跳转到edit.aspx页面,在该页面的FormView控件中显示所选行详细信息,单击FormView控件下方的“编辑”,“删除”,“新建”按钮可完成对数据库的相应操作。
要求在FromView的查看记录模板中添加一个“返回”链接按钮,单击它时可返回到default.aspx页面,具体运行效果参见图9-2和9-3。
图9-2 default.aspx页面图9-3 edit..aspx页面3、使用student.mdf数据库中的T_grade表实现如下功能。
在DropDownList中显示sname(姓名)字段,当在其中选择一项时,在标签上显示所选择的学号(sid)和对应的sname(姓名)信息,如图9-4所示。
第9章 数据绑定与数据绑定控件3
③ 在FormView控件的“属性”窗口中,设置AllowPaging 为true。切换到事件列表中,双击PageIndexChanging,添 加其分页事件。 ④ 切换到源视图,输入绑定表达式,完成后的代码如下: 【演练9-17】代码
再见
《数据库网站设计教程(C#版)》 配套教学资源
第9章 数据绑定与数据绑 定控件 9.6~9.7
本章内容:数据绑定,GridView控件,Details View控件,FormView控件,使用数据 绑定表达式实现数据绑定,调用DataBind()方法实现数据绑定。 本章重点:GridView控件,DetailsView控件,FormView控件。源自
③ 在DetailsView1控件的属性窗口中,设置AllowPaging为 true。 添加DetailsView1控件的PageIndexChanging事件,代码如下 : protected void DetailsView1_PageIndexChanging(object sender, DetailsViewPageEventArgs e) { //分页操作 DetailsView1.PageIndex = e.NewPageIndex; showAllUsers();//绑定控件 }
添加Page的Load事件,代码如下: protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { showAllUsers(); } } ④ 执行Default_DetailsView.aspx,显示如图9-53所示。如果 第1列太窄,可在设计视图中把DetailsView控件适当拉宽。
第9章数据绑定控件
9.2 GridView控件
GridView控件提供了分页显示支持。 属性AllowPaging决定是否使用分页显示。 PagerSetting属性可以设置分页显示的模式,可以 通过设置PagerSettings类的Mode属性来自定义分 页模式。Mode属性的值包括:
1. NextPrevious:上一页按钮和下一页按钮模式。 2. NextPreviousFirstLast:上一页按钮、下一页按钮、第一页 按钮和最后一页按钮模式。 3. Numeric:可以直接访问页面的带编号的链接按钮模式。 4. NumericFirstLast:带编号的链接按钮、第一页链接按钮和 最后一页链接按钮模式。
9.3 ListView控件
ListView控件可以显示使用数据源控件或 获得的数据 。 使用模板和样式定义的格式显示数据。利用 ListView控件,可以逐项显示数据,也可以按组显 示数据。
9.3 ListView控件
ListView 控件具有以下特点: 1. 支持绑定到数据源控件,例如SqlDataSource和 ObjectDataSource。 2. 可通过用户定义的模板和样式自定义外观。 3. 内置排序和选择功能。 4. 内置更新、插入和删除功能。 5. 支持通过使用DataPager控件进行分页的功能。 6. 支持以编程方式访问ListView对象模型,从而可以 动态设置属性、处理事件。 7. 支持多个键字段。
9.2 GridView控件
GridView控件支持对显示在其中进行排序,只需要 把属性AllowSorting设置为true即可。 对GridView控件进行自定义排序行为,可以在 Sorting事件中编写自定义的排序代码。 在Sorting事件处理程序中可以进行的操作: 1. 自定义传递给数据源控件的排序表达式。 2. 创建自己的排序逻辑。
数据绑定与数据绑定控件
具有的功能:
绑定到数据源(DataTable与数据源控件),从数据源 中读取数据并以表格形式显示,方便数据的展现 丰富的外观定制 无需代码实现分页与排序 采用各种类别的控件展现数据(字段) 数据更新功能 数据删除功能
第8张
使用 开发Web应用程序
GridView 数据绑定方式
朋友是条路, 选对了帮着你, 选错了绕死你!
真诚的人,走着走着,就走进 了心里。虚伪的人,走着走着,就 淡出了视线。
第17张
使用 开发Web应用程序
GridView 排序功能
P246
启用排序
AllowSorting = True 字段的SortExpression = 字段名 设置后,Header部分名称会变成超链接样式
第13张
使用 开发Web应用程序 GridView 编辑和删除数据功能
第15张
使用 开发Web应用程序
或许,当一段不知疲倦的旅途结束,只有站在终点的人,才会 感觉到累,其实我一直都明白,能一直和一人做伴,实属不易。
茫茫人海,有多少人能风雨邂逅?尘缘万千,有多少人能相 依相伴?不是所有的遇见都能守候,不是所有的情缘都能拥有, 事不出,不不知谁近是谁远所。人有不品的,不爱知谁浓,谁淡都! 能携手同行,不是所有的故事,都可以写下完 美的结局…… 利不尽,不知谁聚谁散。人不穷,不知谁冷谁暖!
使用 开发Web应用程序
第9章 数据绑定与数据绑定控件
第1张
使用 开发Web应用程序
本章要点
数据绑定概述 GridView控件的使用 DetailsView控件的使用 FormView控件的使用 使用数据绑定表达式实现数据绑定
第Байду номын сангаас张
数据绑定控件
版本。它每次从相关数据源中选择一条记录显示,选择性地提供分页按钮,
用于在记录之间移动。与DetailsView控件不同的是,FormView不使用数 据控件字段,而是允许用户通过模板定义每个项目的显示。FormView支 持其数据源提供的任何基本操作。
•
FormView控件是作为通常使用的更新和插入结构而设计的,
选的;但是,必须为该控件的配置模式创建模板。例如,
要插入记录的话,必须定义InsertItemTemplate。
•
FormView 是 新 的 数 据 绑 定 控 件 , 使 用起 来 像是
DetailsView的模板化版本。它每次从相关数据源中选择
一条记录显示,选择性地提供分页按钮,用于在记录之
• DataList控件:
•
DataList控件可以自定义数据库记录的呈现格式。显示数
据的格式在创建的模板中定义。可以为项、交替项、选定项和
编辑项创建模板。标头、脚注和分隔符模板也用于自定义
DataList的整体外观。通过在模板中包括Button控件,可将列表
项连接到代码,这些代码使用户得以在显示、选择和编辑模式
DetailsView控件和FormView控件之间的主要差异在于DetailsView具有内
置 的 表 格 呈 现 方 式 , 而 FormView 需 要 用 户 定 义 的 模 板 用 于 呈 现 。
FormView和DetailsView对象模型在其它方面非常类似。
•
FormView是新的数据绑定控件,使用起来像是DetailsView的模板化
•
(2)对于有DataSource属性的控件,可直接把数据源的
数据指定给控件DataSource属性。
数据绑定和数据控件
SqlDataSource控件
SqlDataSource控件的属性
1. 2.
3.
4.
5.
6.
Select:方法所检索到的数据的时间。 ConnectionString:获取或设置特定于提供程序的连接字符 串,SqlDataSource控件使用该字符串连接基础数据库。 DeleteCommand:获取或设置SqlDataSource控件从基础数据库删 除数据所用的SQL 字符串。 InsertCommand:获取或设置SqlDataSource控件将数据插入基础数 据库所用的SQL字符串。 SelectCommand:获取或设置SqlDataSource控件从基础数据库检 索数据所用的SQL 字符串。 UpdateCommand:获取或设置SqlDataSource控件更新基础数据库 中的数据所用的SQL字符串。
数据绑定概述
绑定到复杂的数据源
复杂的数据源通常包括列表控件和支持数据绑定的 控件,提供一系列的这类控件:
1. 列表控件:ListBox、DropDownList、CheckBoxList和 RadioButtonList等。 2. 复杂数据控件:GirdView、DetailsView、FormView和 ListView等。
它们的常规绑定步骤如下:
1.将用于显示数据的Web服务器控件添加到页面中。 2.将数据源对象赋给控件的DataSource属性。 3.执行控件的DataBind方法。
SqlDataSource控件
SqlDataSource控件
可以将 SqlDataSource控件和用于显示数据的其他控件( 如GridView、FormView和DetailsView控件)结合使用, 使用很少的代码或不使用代码就可以在网页中显示 和操作数据。
ASP.NET案例教程 第9章ASP.NET的数据绑定与绑定控件
ProviderName
获取或设置.NET Framework数据提供程序的名称
1.使用SqlDataSource控件查询数据 【例9-1】演示如何使用SqlDataSource控件为数据 绑定控件GridView提供数据源。
SqlDataSource控件的主要属性(续)
SelectCommand SelectCommandType SelectParameters UpdateCommand 获取或设置SqlDataSource控件查询数据库数据所用 的SQL命令 获取或设置查询命令类型,可取的值:Text和 StoredProduce。 获取SelectCommand属性所使用的参数的参数集合 获取或设置SqlDataSource控件更新数据库数据所用 的SQL命令
【例9-4】演示如何使用SqlDataSource完成StuInfo 表的数据插入。
参见示例\第09章\DataBind\SqlDataSource_Insert.aspx
9.1.2 ObjectDataSource数据源控件
ObjectDataSource控件通过提供一种将相关页上的 数据控件绑定到中间层业务对象的方法,为三层结构 提供支持。
该控件提供了一个易于使用的向导,引导用户完 成配置过程。
完成配置后,该控件就可以自动调用 中 的类来查询或更新数据库数据。
SqlDataSource控件的主要属性
名 称 说 明
DeleteCommand
获取或设置SqlDataSource控件删除数据库数据所用 的SQL命令
DeleteCommandType 获取或设置删除命令类型,可取的值:Text和 StoredProduce,分别对应SQL命令、存储过程。
第9章_ASP的数据绑定与绑定控件
该控件无须编写任何代码即可实现选择、排序、 分页、编辑和删除功能。
GridView控件的常用属性
名 称 AllowPaging AllowSorting AutoGenerateCol umns AutoGenerateDel eteButton AutoGenerateEdi tButton AutoGenerateSel ectButton
1.使用SqlDataSource控件查询数据 【例9-1】演示如何使用SqlDataSource控件为数据 绑定控件GridView提供数据源。
参见示例\第09章\DataBind\SqlDataSourceDemo.aspx
2.使用参数过滤数据 【例9-2】演示如何按MajorId的值来显示学生信息。
参见示例\第09章\DataBind\Student.dbml 和 LinqDataSourceDemo.aspx
9.2 数据绑定控件
GridView控件 DetailsView控件 FormView控件 ListView控件和DataPager控件
9.2.1 GridView控件
LinqDataSource控件则把属性设置转换为有效的 LINQ查询,当与数据库中的数据进行交互时,不会将 LinqDataSource控件直接连接到数据库,而是与表 示数据库和表的实体类进行交互。
【例9-6】演示如何使用LinqDataSource控件。按专 业查询学生信息,功能与【例9-2】相同。
UpdateMethod UpdateParameters FilterExpression FilterParameters EnableCaching
获取或设置由ObjectDataSource控件调用 以更新数据的方法或函数的名称 获取或设置参数集合,该集合包含由 UpdateMethod方法使用的参数 获取或设置当调用由SelectMethod属性指 定的方法时应用的筛选表达式 获取或设置与FilterExpression字符串中 的任何参数占位符关联的参数的集合
第9章 数据绑定和数据控件
3.5简明教程(C#)
一、数据绑定简介
2、示例
SimpleDataBinding.aspx的网页 页面设计 页面代码 protected void Button1_Click(object sender, EventArgs e) { Page.DataBind(); } 运行效果
3.5简明教程(C#)
3.5简明教程(C#)
二、数据源控件
3、示例
从工具箱中向页面中拖入一个SqlDataSource控件。 配置SqlDataSource控件的属性ConnectionString,它的值是从Web.config文件中 读取的<ConnectionStrings>节定义的名为pubs的字符串。通过属性 ConnectionString连接到SQLServer数据库BookSample,数据库BookSample的 详细信息参考本书提供的源代码。 设置SelectCommand的值,它存储SQL命令,SQL包含一个参数,代码如程序清单 SELECT [StuName], [ID] FROM [Students] where state = @State 添加属性<SelectParameters>的定义,代码如程序清单 <SelectParameters> <asp:controlparameter name="State" controlid="DropDownList1" propertyname="SelectedValue"/> </SelectParameters>
二、数据源控件
2、属性
3.5简明教程(C#)
二、数据源控件
2、功能
控件数据绑定底层原理
控件数据绑定底层原理宝子们!今天咱们来唠唠控件数据绑定的底层原理,这就像是一场神奇的魔法之旅哦。
咱先来说说啥是控件数据绑定哈。
想象一下,控件就像是一个个小木偶,而数据呢,就是那些控制木偶动作的丝线。
数据绑定就是把数据和这些控件连接起来,让控件能够根据数据的变化做出各种有趣的反应。
比如说,一个文本框控件,它可以根据绑定的数据显示不同的文字内容,就像小木偶根据丝线的拉动摆出不同的姿势一样。
那这底层是咋实现的呢?其实呀,这里面有个很重要的概念叫观察者模式。
这模式就像是一群小伙伴之间的默契游戏。
数据就像是那个被大家关注的小明星,控件呢,就是那些小粉丝。
当数据这个小明星有了变化,比如说换了新衣服(数据的值改变了),它就会告诉那些关注它的小粉丝(控件),“嗨,我变啦!”然后控件们就会根据这个消息做出反应,像是文本框更新显示的文字,按钮改变它的状态之类的。
从代码的角度来看呢,在很多编程语言里,都有一些特殊的机制来实现这个过程。
就拿JavaScript来说吧,在前端开发里,我们可以通过一些对象的属性监听来实现数据绑定。
当一个对象的属性(也就是数据啦)发生变化的时候,我们可以设置一些函数来捕捉这个变化,然后再把这个变化传递给对应的控件。
这就像是在数据和控件之间搭了一座秘密的小桥,数据一有动静,就通过这座桥通知控件。
再深入一点,在一些框架里,像Vue.js,它的响应式原理也是基于数据绑定的底层逻辑的。
Vue会把数据进行特殊的处理,把普通的数据变成响应式的数据。
就像是给数据注入了魔法一样,一旦这个数据被使用在控件上(比如在模板里绑定到一个输入框),那么这个数据和控件之间就建立了一种神秘的联系。
当数据改变的时候,Vue 会自动去更新那些和这个数据相关的控件。
这就像是一个智能的管家,时刻关注着数据的变化,然后把家里(界面上的控件)收拾得井井有条。
而且呀,数据绑定还涉及到内存管理的问题呢。
你想啊,如果数据和控件之间的关系乱成一团麻,那内存不就像个被搞得乱七八糟的小房间了嘛。
ASPNET网页设计与网站开发第9章 ASPNET中的数据绑定
9.3.3 在程序中实现绑定
在程序中如何实现DetailsView数据绑定参看例9-9。 核心语句:
DetailsView 1.DataSource = ds; DetailsView 1.DataBind();
其中ds是一DataSet类型的数据源,也可使用
DetailsView 1.DataSourceID = SqlDataSource 1; DetailsView 1.DataBind();
9.4 绑定FormView控件
FormView控件可以绑定到数据源控件上或者绑 定到其他形式的数据源上,实现自动更新、删除、 插入和分页等功能。
9.4.1 FormView控件简介
与 DetailsView 控件相似,可以使用数据源中的单个 记录 。 FormView 控件不指定用于显示记录的预定义布 局。创建一个包含控件的模板,以显示记录中的各个字 段,该模板中包含用于创建窗体的格式、控件和绑定表 达式。 不仅可以显示数据,还可以依赖于数据源控件的 功能执行诸如更新、插入和删除记录的任务 。
9.4.3 在程序中实现绑定
例9-11,核心语句:
FormView 1.DataSource = ds; FormView 1.DataBind();
其中ds是一DataSet类型的数据源,也可使用
FormView 1.DataSourceID = SqlDataSource 1; FormView 1.DataBind();
9.3 绑定DetailsView控件
DetailsView 服务器控件用于显示显示、编辑、插入 或删除一条与它相关联数据源中一条记录,将记录的每 个字段显示在它自己的一行内,它通常用于更新和插入 新记录,该控件一次仅显示一条数据记录。
第9章数据绑定
9.1.1 GridView控件的使用
显示表格数据是软件开发中的一个周 期性任务。提供了许多工具用来 在网格中显示表格数据,例如GridView控 件。通过使用GridView控件,用户可以显 示、编辑和删除多种不同的数据源(例如 数据库、XML文件和公开数据的业务对象) 中的数据。
后台管理模块实现流程
设计新闻数据库
设计添加新闻模板
管理员后台登录
修改和删除新闻
图9-2 后台管理模块实现流程
9.2.1 新闻模块数据库设计
本例的后台数据管理使用的是SQL Server 2005。为了便于读者学习,数据库 的设计相对比较简单。
1.数据库设计 2.使用数据库前的项目准备
9.2.2 新闻发布模板
第9章 数据绑定
本章通过创建一个新闻发布模块,重
点讲解了三个数据绑定控件的使用: GridView、Repeater和DataList。本章讲 解的新闻发布模块的流程如图9-1所示。
新闻自动发布模块的讲解流程
新闻数据库设计
新闻发布模板
新闻编辑
新闻内容浏览
新闻主题展示
图9-1 新闻自动发布模块的讲解流程
用户可以使用GridView执行以下操作。
(1)通过数据源控件自动绑定和显 示数据。
(2)通过数据源控件对数据进行选 择、排序、分页、编辑和删除。
另外,用户还可以通过执行以下操作 来自定义GridView控件的外观和行为。
(1)指定自定义列和样式。
(2)利用模板创建自定义用户界面 (UI)元素。
9.3.1 普通展示功能
普通展示功能同一些大的新闻网站相 似,在主页中以分类的形式展现网站的主 要新闻列表。本例设计的新闻主界面运行 效果如图9-10所示。
数据绑定和数据控件
<%# SingleValueBindingStr + "1" %> <asp:TextBox ID="TextBox1"
runat="server"></asp:TextBox> <asp:TextBox ID="TextBox2" runat="server" Text="<%# SingleValueBindingStr + 3 %>"></asp:TextBox> </div>
第14页
GridView控件中的列及其类型
BoundField:以文字形式呈现数据的普通绑定列类型。 CheckBoxField:以复选框形式呈现数据,绑定到该类型的列
数据应该具有布尔值。 HyperLinkField:以链接形式呈现数据,绑定到该类型的列数
据应该是指向某个网站或网上资源的地址。 ImageField:以图片形式呈现数据。 ButtonField:按钮列,以按钮的形式呈现数据或进行数据的
<asp:BoundField DataField="名称" HeaderText="名称" />
<asp:BoundField DataField="产地" HeaderText="产地" />
<asp:BoundField DataField="价格" HeaderText="价格" />
<asp:BoundField DataField="类型编号" HeaderText="类型编号" />
第9章_数据绑定控件
第九章数据绑定控件 2.0技术依靠两种类型的服务器控件实现数据访问:数据源控件和数据绑定控件。
前者负责连接和访问数据库,而后者负责将从数据库中获取的数据显示出来。
数据绑定控件有很多,前面讲述数据源控件的时候,我们用到的GridView控件,就是一个功能强大、最为常用的数据绑定控件。
本章主要围绕 2.0中诸如GridView、DetailsView以及FormV iew控件等几个重要数据绑定控件的使用方法展开讨论。
9.1 数据绑定控件概述数据绑定控件主要用于在Web页面显示数据。
一般情况下,数据绑定控件与数据源控件进行绑定,以极其灵活的方式将数据源控件提供的数据资料显示出来。
本质上来说,数据绑定控件是将数据作为标记向发出请求的客户端设备或浏览器呈现的用户接口(UI)控件。
主要包括:1)、列表控件:以各种列表形式呈现数据;2)、AdRotator:可以将广告作为图像呈现在页面上;3)、复合控件:包括DetailView、FormView和GridV iew等控件;4)、分层控件:主要有TreeView、Menu等控件。
图9.1给出了数据绑定控件的层次结构。
图9.1 2.0 中的数据绑定控件的层次结构图中,BaseDataBoundControl是个抽象类,所有数据绑定控件都是从该抽象类派生的。
在这个抽象类中,定义了几个重要的属性和一个至关重要的方法成员。
1)、DataSource属性:指定数据绑定控件的数据来源,显示的时候程序将会从这个数据源中获取数据并显示;2)、DataSourceID属性:指定数据绑定控件的数据源控件的ID, 显示的时候程序将会根据这个ID找到相应的数据源控件,并利用这个数据源控件中指定方法获取数据并显示;3)、DataBind()方法:当指定了数据绑定控件的DataSource属性或者DataSourceID属性之后,再调用DataBind()方法才会显示绑定的数据。
并且在使用数据源时,会首先尝试使用DataSourceID属性标识的数据源,如果没有设置DataSourceID时才会用到DataSource属性标识的数据源。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
9.3.3 在主/详细方案中使用DetailsView控件显示 在主/详细方案中使用DetailsView控件显示 详细记录 通过使用数据源控件与可编辑格式显示记录的 DetailsView控件和GridView控件的组合,可以创建 DetailsView控件和GridView控件的组合,可以创建 GridView 一个允许用户编辑现有记录或插入新记录的数据 输入页,所有操作均无须代码。图9-31 显示主-从 输入页,所有操作均无须代码。图9 显示主记录 【例9-4】在GridView控件中显示主记录,在 GridView控件中显示主记录,在 DetailsView控件中显示相关记录,如图9 31所示。 DetailsView控件中显示相关记录,如图9-31所示。
9.4 FormView控件 FormView控件
9.4.1 FormView控件简介和语法 FormView控件简介和语法 FormView控件的基本语法格式如下: FormView控件的基本语法格式如下: <asp:FormView ID="FormView1" runat="server" AllowPaging="True" DataKeyNames="主键名 DataKeyNames="主键名" DataSourceID="SqlDataSource1" style="text-align: left"> 主键名" style="text<EditItemTemplate> 列名1: 列名1: <asp:Label ID="列名1Label1" runat="server" Text='<%# Eval("字段名1") %>' /> ID="列名 列名1Label1" Eval("字段名 字段名1") <br /> … //其他列 //其他列 </EditItemTemplate> <InsertItemTemplate>… <InsertItemTemplate>… </InsertItemTemplate> <ItemTemplate>… <ItemTemplate>…</ItemTemplate> <HeaderTemplate>显示信息 <HeaderTemplate>显示信息</HeaderTemplate> 显示信息</HeaderTemplate> </asp:FormView> 在自定义模板中都包含字段,利用数据绑定表达式可以把字段插入到模板中。在FormView控件的语 在自定义模板中都包含字段,利用数据绑定表达式可以把字段插入到模板中。在FormView控件的语 法格式中可以使用以下两种数据绑定表达式: <%# Eval("字段名") %> Eval("字段名 字段名") <%# Bind("字段名") %> Bind("字段名 字段名")
9.3.2 使用DetailsView控件编辑、插入、删 使用DetailsView控件编辑 插入、 控件编辑、 除记录 使用DetailsView控件 控件, 【例9-3】使用DetailsView控件,对 StudentDB数据库的 StudentDB数据库的StudentInfo表实现编辑、 数据库的StudentInfo表实现编辑 表实现编辑、 插入、删除记录功能。 插入、删除记录功能。
第9章 数据绑定与数 据绑定控件
本章内容:数据绑定,GridView控件,Details View控 本章内容:数据绑定,GridView控件,Details View控 件,FormView控件,使用数据绑定表达式实现数据 件,FormView控件,使用数据绑定表达式实现数据 绑定,调用DataBind()方法实现数据绑定。 绑定,调用DataBind()方法实现数据绑定。 本章重点:GridView控件,DetailsView控件, 本章重点:GridView控件,DetailsView控件, FormView控件。 FormView控件。
9.2 GrБайду номын сангаасdView控件 GridView控件
9.2.1 GridView控件简介 GridView控件简介 GridView控件的基本语法格式如下: GridView控件的基本语法格式如下: <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="主键名 DataKeyNames="主键名" DataSourceID="SqlDataSource1" 主键名" AutoGenerateDeleteButton="True" AutoGenerateEditButton="True" AutoGenerateSelectButton="True" ShowHeader="False" 其他属性> 其他属性> <Columns> <asp:BoundField DataField="字段名1" HeaderText="列标题1" DataField="字段名 HeaderText="列标题 字段名1" 列标题1" ReadOnly="True" SortExpression="排序表达式 SortExpression="排序表达式1" /> 排序表达式1" <asp:BoundField DataField="字段名2" HeaderText="列标题2" DataField="字段名 HeaderText="列标题 字段名2" 列标题2" ReadOnly="True" SortExpression="排序表达式 SortExpression="排序表达式2" /> 排序表达式2" <asp:TemplateField> <ItemTemplate> 其他控件 <%# 绑定表达式 %> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView>
9.1.3 数据绑定控件概述 数据绑定控件包括用于显示多个记录的GridView 数据绑定控件包括用于显示多个记录的GridView 控件和用于显示一个记录的DetailsView、 控件和用于显示一个记录的DetailsView、 FormView控件 FormView控件。 控件。 数据绑定控件提供了两个用于绑定到数据的选项。 数据绑定控件提供了两个用于绑定到数据的选项。 使用DataSourceID属性进行数据绑定 属性进行数据绑定。 ① 使用DataSourceID属性进行数据绑定。 使用DataSource属性进行数据绑定 属性进行数据绑定。 ② 使用DataSource属性进行数据绑定。此选项能 够绑定到包括数据集和数据读取器在 够绑定到包括数据集和数据读取器在 内的各种对象。此方法需要为所有附加功能( 内的各种对象。此方法需要为所有附加功能(如 排序、分页和更新)编写代码。 排序、分页和更新)编写代码。
9.2.4 GridView控件的列 GridView控件的列 在“设计”视图中选中GridView控件,单击 设计”视图中选中GridView控件,单击 其智能标记 展开“GridView任务”菜单, 展开“GridView任务” 其中有关列的选项有5 其中有关列的选项有5项:编辑列、添加新 列、左移列、右移列和移除列。
9.2.2 使用GridView控件显示数据 使用GridView控件显示数据 以表的形式显示数据是GridView控件的主要 以表的形式显示数据是GridView控件的主要 功能,下面举例说明。 【例9-1】本例介绍在GridView控件中使用 本例介绍在GridView控件中使用 存储过程显示数据。存储过程是存储在SQL 存储过程显示数据。存储过程是存储在SQL Server数据库中而不是应用程序代码中的 Server数据库中而不是应用程序代码中的 SQL查询。存储过程比查询代码更安全,而 SQL查询。存储过程比查询代码更安全,而 且通常运行速度更快。
5.启用GridView控件的编辑和删除数据功 .启用GridView控件的编辑和删除数据功 能 在默认情况下,GridView控件在只读模式下 在默认情况下,GridView控件在只读模式下 显示数据。使用GridView控件的内置功能允 显示数据。使用GridView控件的内置功能允 许在不需要编程的情况下编辑或删除记录。
3.启动GridView控件的默认排序功能 .启动GridView控件的默认排序功能 GridView控件提供了内置排序功能,无须任何编 GridView控件提供了内置排序功能,无须任何编 码即可进行单个列排序。可以通过为列设置自定 义排序表示式(SortExpression属性值),并使用 义排序表示式(SortExpression属性值),并使用 排序事件(Sorting和Sorted事件),进一步自定义 排序事件(Sorting和Sorted事件),进一步自定义 GridView控件的排序功能。 GridView控件的排序功能。 4.启用GridView控件的默认分页功能 .启用GridView控件的默认分页功能 如果使用GridView控件显示大量数据,可能希望 如果使用GridView控件显示大量数据,可能希望 对行进行分页,在每一页中显示行的一个子集。 GridView控件有一个内置分页功能,可支持基本 GridView控件有一个内置分页功能,可支持基本 的分页功能。可以使用默认分页用户界面或创建 自定义的分页界面。