快速业务通道

Scott Mitchell的ASP.NET 2.0数据操作教程之十:使用GridView和DetailView实

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21

Scott Mitchell 的ASP.NET 2.0数据操作教程之十:使用GridView和DetailView实现的主/从报表

返回“ASP.NET 2.0数据教程目录”

导言

在前面的教程我们看到了如何使用两个页面(一个主页,用于列出供应 商; 一个明细页,用于显示选定供应商提供的产品)创建主/从报表 . 这种两个页 面的报表格式也可以集中在一个页面上. 这篇教程将会使用一个GridView, 它的 每一行都包含产品的名称和单价以及一个选择按钮. 单击一个产品的选择按钮会 在同一页的DetailsView控件上显示该产品的全部详细信息.

Scott Mitchell的ASP.NET 2.0数据操作教程之十:使用GridView和DetailView实

图 1: 单击选择按钮显示产品明细

Step 1: 创建一个可选择行 的GridView

回想一下前面的跨页的主/从报表, 它的每个主记录包含了一个超 链接, 当点击该链接时转到详细信息页,并在查询字符串中传递所单击行的 SupplierID值. 这个链接是通过在GridView上使用HyperLinkField实现的. 对于 单页的主/从报表,每个GridView行需要一个按钮, 单击该按钮时显示详细信息. GridView控件可以在每行包含一个选择按钮, 单击该按钮时会引起一次回发并把 该行做为GridView的SelectedRow值.

先给Filtering 文件夹下的 DetailsBySelecting.aspx页添加一个GridView控件, 设置ID属性为 ProductsGrid, 然后增加一个新的ObjectDataSource并命名为 AllProductsDataSource, 它调用ProductsBLL类的GetProducts()方法

Scott Mitchell的ASP.NET 2.0数据操作教程之十:使用GridView和DetailView实

图 2: 创建一个ObjectDataSource 并命名为 AllProductsDataSource

Scott Mitchell的ASP.NET 2.0数据操作教程之十:使用GridView和DetailView实

图3: 使用ProductsBLL 类

Scott Mitchell的ASP.NET 2.0数据操作教程之十:使用GridView和DetailView实

图4: 配置 ObjectDataSource 调用 GetProducts() 方法

编辑 GridView的字段, 移除ProductName和UnitPrice以外的字段. 也可以根据需要自 定义绑定字段,比如格式化utitPrice字段为货币,修改绑定字段的HeaderText属性 . 这些操作可以在设计视图完成, 单击GridView智能标记上的编辑列, 或是手工 配置声明的语法.

Scott Mitchell的ASP.NET 2.0数据操作教程之十:使用GridView和DetailView实

图 5: 移除 ProductName 和 UnitPrice 以外的列.

最后的 GridView标记如下:

<asp:GridView ID="ProductsGrid" runat="server" AutoGenerateColumns="False" DataKeyNames="ProductID"
DataSourceID="AllProductsDataSource" EnableViewState="False">
<Columns>
<asp:BoundField DataField="ProductName" HeaderText="Product" SortExpression="ProductName" />
<asp:BoundField DataField="UnitPrice" DataFormatString="{0:c}" HeaderText="Unit Price"
HtmlEncode="False" SortExpression="UnitPrice" />
</Columns>
</asp:GridView>

接 下来, 我们需要设置GridView为可以选择行, 这会为每一行增加一个选择按钮. 要实现该功能, 只要选中GridView智能标记上的”启用选定内容”的 复选框就可以了.

Scott Mitchell的ASP.NET 2.0数据操作教程之十:使用GridView和DetailView实

图6: 让 GridView 的行可选

选中”启用选定内容” 项会给ProductsGrid GridView增加一个命令字段并设置ShowSelectButton属性为 True.这样GridView的每一行都会有一个选择按钮, 如图6所示. 默认情况下, 选 择按钮以链接的形式呈现, 但是你也可以使用按钮或图片按钮来代替, 修改 CommandField的ButtonType属性即可.

<asp:GridView ID="ProductsGrid" runat="server" AutoGenerateColumns="False" DataKeyNames="ProductID"
DataSourceID="AllProductsDataSource" EnableViewState="False">
<Columns>
<asp:CommandField ShowSelectButton="True" />
<asp:BoundField DataField="ProductName" HeaderText="Product"

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号