您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > ASP[1].NET(C_)大学实用教程-第8章
ASP.NET(C#)大学实用教程郭洪涛刘丹妮陈明华编著本节课知识点DataGrid控件的高级操作数据库控件模板列的使用使用DataSet对象更新数据库DataGrid控件深入研究讨论DataGrid控件的高级功能,包括利用DataGrid控件进行分页显示数据、排序和定制列等操作分页显示设置与分页显示相关的属性,语句为:AllowPaging=True;//允许分页显示PageSize=“整数值”;//设置每页显示的记录数目添加OnPageIndexChanged事件过程。还可以通过PagerStyle属性设置分页导航栏的样式,语句为:PagerStyle-Mode=NextPrev|NumericPagesPagerStyle-HorizontalAlign=Left|Right|Center“PagerStyle-PrevPageText=字符串PagerStyle-NextPageText=字符串例8-1DataGrid控件分页显示数据示例。对列进行排序排序的具体实现过程是:当单击DataGrid某列的标题时,就将该列的字段名赋值给DataSet对象默认视图的Sort属性,然后按该列排序。例8-2DataGrid控件排序示例定制列自己定制每一列,包括每列的显示内容、顺序和样式等。定制列需要先对DataGrid控件的属性进行如下设置:AutoGenerateColumns=False;表示不允许DataGrid控件自动产生列,需要自己添加BoundColumn,HyperLinkColumn等列.定制列表8-1DataGrid控件定义列的一些属性列名称说明BoundColumn显示绑定到数据源中的字段的列,它以文本形式显示字段中的每项,是DataGrid控件的默认列类型ButtonColumn为列中每项显示一个命令按钮,用于创建一列自定义按钮控件EditCommandColumn该列包含列中各个项的编辑命令,显示“编辑”、“更新”和“取消”等链接以响应DataGrid控件中的EditItemIndex属性的更改HyperLinkColumn将列中各项的内容显示为超链接,列的内容可以绑定到数据源或静态文本中的字段TemplateColumn按照指定的模板显示列中的各项,可以在列中添加自定义控件例8-3DataGrid控件定制列示例。在DataGrid控件中只显示3列内容:会员姓名、会员所在省份和会员的个人介绍。模板中的数据绑定DataGrid控件的模板列名称说明HeaderTemplate如果被定义,则确定列表标题的内容和布局;如果未定义,则不呈现标题FooterTemplate如果被定义,则确定列表脚注的内容和布局;如果未定义,则不呈现脚注ItemTemplate定义列表中项目的内容和布局EditItemTemplate如果被定义,则确定正在编辑项目的内容和布局模板中的数据绑定在DataGrid控件中,模板列的定义语句为:asp:TemplateColumnItemTemplate服务器控件/ItemTemplateEditItemTemplate服务器控件/EditItemTemplate/asp:TemplateColumn例8-4DataGrid控件的模板列示例。要求在DataGrid控件中显示会员姓名列和密码列,并实现对密码的更新操作。DataList控件的模板列基本语法为:asp:DataListid=控件名称runat=serverRepeatColumns=整数值,表示控件中显示的列数RepeatDirection=Horizontal|Vertical,表示水平显示还是垂直显示RepeatLayout=Table|Flow,表示是否以表格的形式显示数据OnEditCommand=单击编辑按钮时的事件名称OnUpdateCommand=单击更新按钮时的事件名称OnCancelCommand=单击取消按钮时的事件名称OnDeleteCommand=单击删除按钮时的事件名称OnItemCommand=单击其他按钮时的事件名称DataKeyField=关键字段,类似于数据库中的主键模板列/asp:DataListDataList控件的模板列DataList控件的模板列名称说明ItemTemplate定义列表中项目的内容和布局,该项必选AlternatingItemTemplate如果被定义,则该模板确定替换项的内容和布局;如果未定义,则使用ItemTemplateSeparatorTemplate如果被定义,则在各个项目(及替换项)之间呈现分隔符;如果未定义,则不呈现分隔符SeletedItemTemplate如果定义该模板,则确定选中项目的内容和布局EditItemTemplate如果定义该模板,则确定正在编辑项目的内容和布局HeaderTemplate如果被定义,则该模板确定列表标题的内容和布局;如果未定义,则不呈现标题FooterTemplate如果被定义,则该模板确定列表脚注的内容和布局;如果未定义,则不呈现脚注例8-5通过DataList控件显示会员信息。每行显示3条记录。单击【详细信息】超链接后,打开新页面显示会员详细信息。例8-6利用DataList控件,实现对数据的更新、删除和取消等操作。Repeater控件的模板列Repeater控件的基本语法为:asp:Repeaterid=控件名称runat=serverOnItemCommand=单击其中按钮时的事件名称模板列/asp:RepeaterRepeater控件的模板列名称说明ItemTemplate定义列表中项目的内容和布局,该项必选AlternatingltemTemplate如果被定义,则该模板确定替换项的内容和布局;如果未定义,则使用ItemTemplateSeparatorTemplate如果被定义,则在各个项目(及替换项)之间呈现分隔符;如果未定义,则不呈现分隔符HeaderTemplate如果被定义,则该模板确定列表标题的内容和布局;如果未定义,则不呈现标题FooterTemplate如果被定义,则该模板确定列表脚注的内容和布局;如果未定义,则不呈现脚注例8-7利用Repeater控件查询记录。类型化数据集DataSet是ADO.NET组件中的主要控件,它是从数据源中检索到的数据在内存中的缓存。DataSet是完全独立于数据库的对象,其中的数据可以被插入、更新和删除,并且它能够保存任何修改的细节。DataSet的子对象:DataTable对象DataColumn对象DataRow对象DataRelation对象例8-8手动创建一个cart表,表中包括4个字段:orderID(订单ID)、userName(会员标识)、productID(商品ID)、number(商品数量)。类型化数据集的基本操作(一)对DataSet对象的操作包括增加/删除行、增加/删除列、修改值、筛选和排序、给两个表建立关系等。在下面的语句中,ds,dt和dr分别表示DataSet对象、DataTable对象和DataRow对象的实例。删除行的语句为:dt.Rows[行号].Delete();删除列的语句为:dt.Columns.Remove(age);//删除age列类型化数据集的基本操作(二)修改值的一般方法是,首先定位到行,然后对该行指定列赋值,语句为:dr=dt.Rows[行号];dr[age]=值;返回表中行数的语句为:num=dt.Rows.Count;返回表中列数的语句为:num=dt.Columns.Count;对列进行排序的一般方法是,加上DESC表示降序排列,否则为升序排列,语句为:ds.Tables[表名称].DefaultView.Sort=列名称DESC;例8-9从数据库中填充一个DataSet对象,然后绑定到DataGrid控件上,随后对DataSet对象进行一些基本操作后,再绑定到另外一个DataGrid控件上。类型化数据集的更新数据库操作DataAdapter对象可以通过其Update方法实现以DataSet对象中的数据来更新数据库。当DataSet实例中包含的数据发生更改后,此时调用Update方法,DataAdapter将分析已做出的更改并执行相应的命令(insert,update或delete),并以此命令来更新数据库中的数据。例8-10在数据库中删除用户表里userid最小的用户。例8-11将DataSet对象的更新映射回数据库的操作示例。
本文标题:ASP[1].NET(C_)大学实用教程-第8章
链接地址:https://www.777doc.com/doc-4125883 .html