你可能已经注意到,许多属性和HTML表格元素相对应,如标题和边框。这说明ASP.NET使用HTML表格来呈现FormView控件。
你可以通过微软网站在线查看一个更加全面的FormView控件属性列表。下表列出了一些值得关注的重要属性。
AllowPaging:一个说明用户能否对指定数据源中的记录分页的布尔值。如果设为真,则在所显示记录的底部显示默认的分页数字系统(从1到记录的数量)。分页链接可以通过各种分页属性自定义。
DataKeyNames:数据源的键字段。
DataSourceID:用来移植FormView控件数据源元素ID。如果使用SQL Server,它与分配给SqlDataSource元素的ID对应。
DefaultMode:允许你指定控件的默认行为。也就是说,在用户访问时,它最初如何显示。可能的值包括:ReadOnly、Insert和Edit。
EmptyDataText:遇到空数据值时显示的文本。
宣称FormView控件时,还必须对它的内容进行相应格式化。它的数据通过模板显示。FormView控件主要使用五个模板:
ItemTemplate:它控制用户查看数据时的显示情况。
EditItemTemplate:它决定用户编辑记录时的格式和数据元素的显示情况。在这个模板内,你将使用其它控件,如TextBox元素,允许用户编辑值。
InsertItemTemplate:与编辑一条记录相似,这个模板控制允许用户在后端数据源中添加一条新记录的字段的显示。由于输入了新的值,应该根据数据的要求允许用户自由输入文本或限制某些值。
FooterTemplate:决定FormView控件表格页脚部分显示的内容,如果有的话。
HeaderTemplate:决定FormView控件表格标题部分显示的内容,如果有的话。
这些模板允许你控制绑定到一个FormView控件的数据的显示和行为。例如,列表B中的ASP.NET Web表单连接到标准的Northwind数据库,允许用户通过名字、姓、雇用日期和家庭电话号码字段查看、编辑、删除和添加新的员工记录。
它使用TextField控件显示被编辑或添加的数据,以及只是为了查阅而显示的值。ItemTemplate使用CSS格式化表格,而InsertTemplate则使用HTML样式进行格式化,到底使用哪种方法由开发者决定。
注:ASP.NET用Button控件添加、编辑、删除和保存记录。
在Button控件中,New的CommandName值将记录转换为插入模式并加载InsertItemTemplate模板,它允许用户输入一个新记录值。你可以用Edit的CommandName值给ItemTemplate增加一个新按钮,使FormView控件进入编辑模式。
可以给ItemTemplate模板增加一个带Delete的CommnadName值的按钮,允许用户从数据源中删除当前记录。Update的CommnadName保存数据,而Cancel终止操作。