使用ASP.NET 2.0 GridView轻松操作数据

支持的字段类别

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

  • BoundField控件:以字符串的方式显示该字段数据。
  • ButtonField控件:显示一个用户定义的按钮。
  • CheckField控件:字段值如果是布尔值,显示复选框(checkbox)。
  • CommandField控件:自动产生一个命令按钮,如编辑(Edit)、更新(Update),以及取消(Cancel)按钮。
  • HyperLinkField控件:把字段值显示为超级链接(hyperlink)。
  • ImageField控件:当字段值指向某图片时,则自动显示该图片。
  • TemplateField控件:允许用户使用模板定制其他控件的外观。

使用这些类型的控件字段,你可以掌控它们的外观,并且对于这些和GridView控件绑定的数据以及其它元素,你能够获得一种良好体验。下表所示的GridView控件,显示了由BoundField元素附属的查询方法得到的数据。

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

<asp:TemplateField
HeaderStyle-property="value"
ItemStyle-property="value"
FooterStyle-property="value">
<HeaderTemplate>
HTML, text or server controls
</HeaderTemplate>
<ItemTemplate>
HTML, text or server controls
</ItemTemplate>
<AlternatingItemTemplate>
HTML, text or server controls
</AlternatingItemTemplate>
<FooterTemplate>
HTML, text or server controls
</FooterTemplate>
</asp:TemplateField>

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

 

<html><head runat="server">
<title>Display GridView</title>
</head><body>
<form id="frmGridViewExample2" runat="server">
<asp:GridView DataSourceID="gvExample"
Runat="Server" AllowSorting="True" AllowPaging="True" PageSize="10"
AutoGenerateColumns="False" BackColor="#c0c0c0" BorderColor="black"
BorderStyle="Groove" BorderWidth="5" Caption="GridView Example" />
<asp:SqlDataSource ID="gvExample"
ConnectionString="Server=localhost;Database=Northwind;Trusted_Connection=true"
SelectCommand="SELECT EmployeeID, LastName, FirstName FROM Employees" Runat="Server">
<Columns>
<ItemTemplate HeaderText="Employee#v>
<asp:Label Runat="Server"
ForeColor="Red" Font-Bold="True" Text='<%# Eval("EmployeeID") %>'/>
</ItemTemplate>
<asp:BoundField DataField="LastName" NullDisplayText="--" />
<asp:BoundField DataField="FirstName" NullDisplayText="---" />
</Columns>
</asp:GridView>
</form></body></html>

数据的编辑

除了让用户可以查看和筛选数据外,另一个普遍的需求便是编辑数据。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了呢?如果是,分享一下你使用的体会;如果还没有,就请说说没有更换的原因。

你可能感兴趣的:(使用ASP.NET 2.0 GridView轻松操作数据)