ASP.NET Web数据控件
1、数据控件简介 这包括数据源控件和格式设置控件,前者使您可以使用 Web 控件访问数据库中的数据,后者使您可以显示和操作ASP.NET 网页上的数据。 2、数据控件 * GridView 控件:以表的形式显示数据,并提供对列进行排序、翻阅数据以及编辑或删除单个记录的功能。 * DetailsView 控件:一次呈现一条表格形式的记录,并提供翻阅多条记录以及插入、更新和删除记录的功能。DetailsView 控件通常用在主/详细信息方案中,在这种方案中,主控件(如 GridView 控件)中的所选记录决定了 DetailsView 控件显示的记录。 * FormView 控件:与 DetailsView 控件类似,它一次呈现数据源中的一条记录,并提供翻阅多条记录以及插入、更新和删除记录的功能。不过,FormView控件与 DetailsView 控件之间的差别在于:DetailsView 控件使用基于表的布局,在这种布局中,数据记录的每个字段都显示为控件中的一行。而 FormView控件则不指定用于显示记录的预定义布局。 * Repeater 控件:使用数据源返回的一组记录呈现只读列表。与 FormView 控件类似,Repeater 控件不指定内置布局。您可以使用模板创建 Repeater 控件的布局。 * DataList 控件:以表的形式呈现数据,通过该控件,您可以使用不同的布局来显示数据记录,例如,将数据记录排成列或行的形式。您可以对 DataList 控件进行配置,使用户能够编辑或删除表中的记录。(DataList 控件不使用数据源控件的数据修改功能;您必须自己提供此代码。)DataList 控件与 Repeater 控件的不同之处在于:DataList 控件将项显式放在 HTML 表中,而 Repeater 控件则不然。 3、数据控件示例 示例1:GridView 控件 涉及的知识:数据绑定、排序、分页、选定内容、编辑、删除、模版 示例2:DetailsView 控件 注意:前面部分使用 DetailsView 控件时,用于启用编辑、插入和删除的选项不可用。这是因为 DetailsView 控件所绑定到的“SqlDataSource1”控件没有必需的 SQL 语句。现在已经配置数据源以包括更新语句,所以更新选项在 DetailsView 控件上可用。 注意:利用DetailsView 控件和GridView 控件结合实现主/详细信息页。 选择“GridView”控件,并在“GridView 任务”菜单中选择“编辑列”。 在“可用字段”下,打开“命令字段”节点,选择“选择”,然后单击“添加”将其添加。 在“选定的字段”列表中,选择“选择”,然后在“CommandField”属性网格中,将其“SelectText”属性设 置为“详细信息”。 在“属性”窗口中确认其“DataKeyNames”属性的设置。 选择DetailsView 控件,设置另一个数据源,因其有条件查询。根据上面的选择对应显示该信息。 注意:利用DetailsView 控件和GridView 控件结合实现不同页的主/详细信息。 利用超链接来传递值,所以主页gridview控件添加超链接控件,DataNavigateUrlFields ,指示超链接应从“**”列获取其值 DataNavigateUrlFormatString :XX.aspx?cid={0} 创建用来导航到 xx.aspx 页的硬编码链接。该链接还传递名为 cid 的查询字符串变量,该变量的值将使用 DataNavigateUrlFields 属性中引用的列进行填充。 示例3:FormView 控件 注意:与DetailsView 控件的区别:它可以根据数据的具体情况可以自己设定显示布局,以及编辑、插入操作时的布局。 注意:绑定表达式 <%# Eval("字段名") %> <%# Bind("字段名") %> 区别:eval是只读数据,bind是可更新的.Eval 单向绑定:数据是只读的 Bind 双向绑定:数据可以更改,并返回服务器端,服务器可以处理更改后的数据,如存入数据库.