Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)delv
published in(发表于) 2014/1/16 9:30:52
使用ASP.NET,2.0,GridView轻松操作数据_[Asp.Net教程]

使用ASP.NET 2.0 GridView轻松操作数据_[Asp.Net教程]

在上星期,我介绍了ASP.NET 2.0中的GridView(网格视图)数据控件,并阐述了使用它的基本方法。这一周,我将更进一步,就如何处理控件所包含的数据的操作细节作些探讨。这些操作包括查看、编辑,以及删除数据。


让人感激不尽的是,GridView控件让我们使用这些特性时感到轻而易举。在我们深入这些主题之前,我要首先来检查一下,看看GridView控件可以支持哪几类不同的字段控件类别(field type)。


支持的字段类别


GridView控件支持下列字段控件:


BoundField控件:以字符串的方式显示该字段数据。
ButtonField控件:显示一个用户定义的按钮。
CheckField控件:字段值如果是布尔值,显示复选框(checkbox)。
CommandField控件:自动产生一个命令按钮,如编辑(Edit)、更新(Update),以及取消(Cancel)按钮。
HyperLinkField控件:把字段值显示为超级链接(hyperlink)。
ImageField控件:当字段值指向某图片时,则自动显示该图片。
TemplateField控件:允许用户使用模板定制其他控件的外观。
使用这些类型的控件字段,你可以掌控它们的外观,并且对于这些和GridView控件绑定的数据以及其它元素,你能够获得一种良好体验。列表 A所示的GridView控件,显示了由BoundField元素附属的查询方法得到的数据。


如果你要显示的控件字段是图片、按钮,或者超级链接,那么可以使用相应的字段类别,不过,TemplateField类别让你可以自定义字段的外观。它的语法实现如下:


HeaderStyle-property="value"
ItemStyle-property="value"
FooterStyle-property="value">

HTML, text or server controls


HTML, text or server controls


HTML, text or server controls


HTML, text or server controls


对于那些以前使用过ASP.NET 1.x的模板字段的人,这种方法并不新奇。列表 B是通过TemplateField显示数据的一个可能用法的示例。字段的格式制定和显示方法有各种选项可选,很容易做到满足用户的不同要求。


数据的编辑


除了让用户可以查看和筛选数据外,另一个普遍的需求便是编辑数据。GridView数据控件使这变得简单,方法是利用它的AutoGenerateEditButton属性和关联的数据库连接的UpdateCommand属性。


当/如果用户编辑并保存数据时,sqlDataSource元素将提供UpdateCommand属性来定义所用的SQL。这需要通过DataSourceID属性(定位到sqlDataSource)来绑定到GridView控件的编辑功能。同时,sqlDataSource元素的DataKeyNames属性用于指定GridView内数据行的主键和键值数组。列表 C是使用这种方法编辑和更新GridView数据的示例。


数据的删除


和编辑功能一样,GridView控件也简化了用户从GridView控件中删除单个数据行的操作。同样,为了控制删除的执行,这里需要sqlDataSource控件和DeleteCommand属性互相配合。


GridView控件的AutoGenerateDeleteButton属性通知系统生成一个删除按钮(其值为真时),或者不生成按钮(其值为假时)。当用户选中删除按钮时,所选中行数据的值将被送到sqlDataSource的DeleteCommand属性定义的SQL命令语句中执行。列表 D把删除功能引入进来,对上面的例子作了扩展。


易于使用的特性


ASP.NET 1.x的DataGrid控件功能强大,但具体实施却颇费时间。ASP.NET 2.0的功能性和可扩展性同样强大,但复杂度却大大下降。你只要把它和新的sqlDataSource控件组合一起,就可以马上获得这些强大特性。你不需要编写C#或者VB.NET代码就可以实现数据的访问。


你是不是已经更新换代,使用最新版的.NET Framework了呢?如果是,分享一下你使用的体会;如果还没有,就请说说没有更换的原因。



--------------------------------------------------------------------------------


Tony Patton作为应用程序开发员,有着Java、VB、Lotus,以及XML的各项认证。


责任编辑:德东



Display GridView



ConnectionString="Server=localhost;Database=Northwind;Trusted_Connection=true" SelectCommand="SELECT EmployeeID, LastName, FirstName FROM Employees" Runat="Server">








Display GridView



ConnectionString="Server=localhost;Database=Northwind;Trusted_Connection=true" SelectCommand="SELECT EmployeeID, LastName, FirstName FROM Employees" Runat="Server">










GridView Edit


Caption="GridView Edit Example" />
ConnectionString="Server=localhost;Database=Northwind;Trusted_Connection=true" SelectCommand="SELECT EmployeeID, LastName, FirstName FROM Employees" UpdateCommand="UPDATE Employees SET LastName=@LastName, FirstName=@FirstName WHERE EmployeeID=@EmployeeID" Runat="Server">









GridView Delete



ConnectionString=”Server=localhost;Database=Northwind;Trusted_Connection=true” SelectCommand=”SELECT EmployeeID, LastName, FirstName FROM Employees” UpdateCommand=”UPDATE Employees SET LastName=@LastName, FirstName=@FirstName WHERE EmployeeID=@EmployeeID" DeleteCommand=”DELETE Employees WHERE EmployeeID=@EmployeeID” Runat="Server">







来源: builder.com.cn







If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759