《ASP NET程序设计与开发》课件第9章_第1页
《ASP NET程序设计与开发》课件第9章_第2页
《ASP NET程序设计与开发》课件第9章_第3页
《ASP NET程序设计与开发》课件第9章_第4页
《ASP NET程序设计与开发》课件第9章_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

9.1DetailsView简介

9.2DetailsView控件的基本设置

9.3在DetailsView控件中进行分页

9.4使用DetailsView控件修改数据

9.5DetailsView控件的常用事件

本章小结

训练任务9.1DetailsView简介

DetailsView与GridView的功能非常相似,同样具有编辑、删除、分页等功能,区别在于DetailsView控件每次仅显示一条记录,而GridView每次则可以显示多条记录。DetailsView还具备GridView所没有的新建数据功能。使用DetailsView控件,用户可以从它的关联数据源中一次显示、编辑、插入或删除一条记录。即使DetailsView控件的数据源公开了多条记录,该控件一次也仅显示一条数据记录。默认情况下,DetailsView控件将记录的每个字段显示在自己的一行内。DetailsView控件不支持排序。

DetailsView控件可以自动对其关联数据源中的数据进行分页,若要启用分页,则需将AllowPaging属性设置为True。从关联的数据源选择特定的记录时,可以通过分页到该记录进行选择。由DetailsView控件显示的记录是当前选择的记录。

9.1.1DetailsView操作界面

1.DetailsView显示数据界面

图9-1所示为DetailsView显示数据界面,具有“新建”、“编辑”、“删除”、“分页”等功能。图9-1DetailsView显示数据页面

2.DetailsView编辑页面

图9-2所示为DetailsView编辑数据页面,可以在输入数据后,单击“更新”来更新数据,或者单击“取消”来取消更新。图9-2DetailView编辑数据页面以上语法结构与GridView非常相似,其不同之处在于字段的语法,GridView是Columns,但是DetailsView为Fields。9.2DetailsView控件的基本设置9.2.1DetailsView属性的设置

DetailsView属性大多同GridView类似,在此仅介绍不同的属性。

(1) DefaultMode:可以设置DetailsView的默认模式。当用户执行DetailsView时为默认模式,包括ReadOnly(只读模式)、Edit(编辑模式)和Insert(新建模式)。

(2) Fields:DetailsView的字段,相当于GridView的Columns。9.2.2DetailsView字段的设置

DetailsView包含表9-1所列的字段。DetailsView与GridView的主要区别如下:

(1) GridView字段称为Column,而且字段语法包含在<Columns></Columns>语法中。

(2) DetailsView字段称为Field,而且字段语法也包含在<Fields></Fields>语法中。9.2.3DetailsView的字段模板类型

DetailsView字段模板有下列类型,如表9-2所示。

DetailsView字段模板比GridView多了“新建模板”(InsertTemplate),但是少了“表尾模板”(FooterTemplate)。9.2.4DetailsView的表格模板

前面所列为字段模板,另外还有4个表格模板,如表9-3所示。DetailsView的表格模板比GridView多了“表头模板”(HeaderTemplate)和“表尾模板”(FooterTemplate)。9.3在DetailsView控件中进行分页

DetailsView控件具有内置的支持,允许用户一次一条地对记录分页,还支持自定义分页用户界面(UI)。在DetailsView控件中,一个数据页就是一个绑定记录。如果DetailsView控件被绑定到某个数据源控件,则此控件将从数据源获取所有记录,显示当前页的记录,并丢弃其余记录。当用户移到另一页时,DetailsView控件会重复此过程,显示另一条记录。如果用户正使用SqlDataSource控件,并将其DataSourceMode属性设置为DataReader,则DetailsView控件无法实现分页。

DetailsView控件支持对其数据源中的记录进行分页,若要启用分页,则只需将AllowPaging属性设置为True,在控件的最下端会添加页码显示。

用户可以用多种方式自定义DetailsView分页的用户界面。在将AllowPaging属性设置为True时,PagerSettings属性允许自定义DetailsView控件生成的分页用户界面的外观。DetailsView控件可显示允许向前和向后导航的方向控件以及允许用户移动到特定页的数字控件。

DetailsView控件的PagerSettings属性设置为一个PagerSettings类。可以通过将DetailsView控件的Mode属性设置为PagerButtons值来自定义分页模式。例如,用户可以通过以下代码来自定义分页用户界面模式:

DetailsView1.PagerSettings.Mode=PagerButtons.NextPreviousFirstLast;

也可以通过属性窗口设置Mode属性来指定分页用户界面,可用的模式如表9-4所示。9.4使用DetailsView控件修改数据

DetailsView控件具有一项内置功能,用户无需编程即可编辑或删除记录,用户可以使用事件和模板来自定义DetailsView控件的编辑功能。在DetailsView控件中显示来自数据源的单条记录的值,其中每个数据行表示该记录的一个字段。DetailsView控件允许用户编辑、删除和插入记录。用户可以通过将AutoGenerateEditButton、AutoGenerateInsertButton和AutoGenerate-DeleteButton属性中的一个或多个设置为True来启用DetailsView控件的内置编辑功能,如图9-3所示。DetailsView控件将自动添加此功能,使用户能够编辑或删除当前绑定的记录以及插入新记录,但前提是DetailsView控件的数据源支持编辑。图9-3启用DetailsView内置编辑功能

DetailsView控件提供了一个用户界面,使用户能够修改绑定记录的内容。通常在一个可编辑视图中会显示一个附加行,其中包含“编辑”、“新建”和“删除”命令按钮。默认情况下,这一行会添加到DetailsView控件的底部。

当用户单击某个命令按钮时,DetailsView控件会重新显示该行,并在其中显示可让用户修改该行内容的控件,编辑按钮将被替换为可让用户保存更改或取消编辑行的按钮。在完成更新后,DetailsView控件会引发ItemUpdated事件。此事件使用户能够执行更新后的逻辑,如完整性检查。同样,DetailsView控件会在完成插入后引发其ItemInserted事件,而在完成删除后引发其ItemDeleted事件。在完成更新且已引发所有事件后,DetailsView控件会重新绑定到数据源控件以显示更新后的数据。

DetailsView控件的编辑和删除功能的配置与操作同GridView控件的类似,这里不再详细介绍。通过上面的介绍,我们掌握了DetailsView控件的基本用法。下面我们根据项目任务的要求,介绍如何向数据表中插入一条新的数据记录。项目任务9-1使用DetailsView控件插入记录

【要求】使用DetailsView控件向Second数据库的productinfo表中插入新的记录。

【步骤】

(1)添加一个新的页面ExampleDetailsView.aspx,拖放一个DetailsView控件和一个SqlDataSource到该页面上。按照如图9-4和图9-5所示的方法配置SqlDataSource,即选择Product表中的所有数据。图9-4配置“SqlDataSource1”图9-5配置“高级SQL生成选项”

(2) DetailsView的智能标记按照图9-6设置。

(3)按F5键,运行效果如图9-7所示。

(4)如果不要求对字段进行约束,则只要我们在空白处输入合理的数据,即可按“插入”按钮向数据库中添加一行新的记录,如图9-8所示。图9-6DetailsView的智能标记设置图9-7运行效果图9-8插入新记录9.5DetailsView控件的常用事件

DetailsView控件可引发一些事件,这些事件在当前记录显示或更改时发生。当单击一个命令控件(如作为DetailsView控件的一部分的Button控件)时也会引发事件。表9-5列出了DetailsView控件的常用事件。到这里,DetailsView控件的用法就介绍完了。下面根据项目任务的另外一个要求实现infodetails.aspx页面。项目任务9-2实现infodetail.aspx页面

【要求】在第8章中,我们介绍了一个示例,是将title字段换为HyperLinkField。在演示效果中,我们看到当单击标题时,可以打开一个网页infodetails.aspx,显示该物品的详细信息,本任务即要求实现infodetails.aspx页面。

【步骤】

(1)将infodetails.aspx切换至设计窗口,拖放一个DetailsView控件和SqlDataSource控件到页面上,如图9-9所示。

(2)配置SqlDataSource控件,如图9-10~图9-12所示。图9-9增加一个DetailsView控件和一个SqlDataSource控件图9-10选择productinfo表图9-11WHERE窗口配置图9-12“高级SQL生成选项”窗口

(3)配置DetailsView控件的属性,选择数据源为SqlDataSource1,选择自动套用格式为“彩色型”,如图9-13和图9-14所示。

这时,如果我们从ExampleGridView.aspx中运行程序,单击其中的某一条记录,则可以看到infodetails.aspx的效果如图9-15所示。图9-13选择数据源图9-14“自动套用格式”窗口图9-15运行效果显然,该效果还不是很完美,比如说“jyxz”、“new”、“fapiao”、“tihuo”字段的显示是一个方框,而且我们也不知道这些标题代表什么含义,为了使界面显示得更人性化,我们继续对DetailsView控件做如下配置。

(4)打开DetailsView控件的编辑字段,按照表9-6列出的要求设置各个字段的属性。

(5)为DetailsView控件添加DataBound事件,使其在显示时比较人性化,如图9-16所示。图9-16在“属性”窗口中添加DetailsVi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论