Scott Mitchell的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表
返回“ASP.NET 2.0数据教程目录” 导言 在前面的两篇教程中,我们看到了如何在单一页面中显示主/从报表, 它使用DropDownList显示主记录,使用GridView或DetailsView显示详细信息. 另 外一种常见的主/从报表模式是在一个页面中显示主记录而在另一个页面中显示详 细信息.互联网上的论坛,如www.asp.net ,就是该模式在实际应用中非常典型例子 . Asp.Net论坛由多个子论坛组成: Getting Started, Web Forms, Data Presentation Controls 等等. 每个子论坛包含多个主题, 每个主题又由多个贴 子组成. 在asp.net论坛主页上列出了这些子论坛,单击其中一个论坛会转到 ShowForum.aspx页面, 该页面列出了这个子论坛所包含的主题. 同样,单击一个主 题会转向ShowPost.aspx, 该页面显示所单击主题的贴子. 在这篇教程中, 我们将通过使用GridView列出供应商来实现该模式. GridView中的每行(一行便是 一个供应商)包含一个”查看产品”的链接. 该链接在单击时会转到另 外一个页面, 这个页面显示选中供应商的所有产品. Step 1: 在 Filtering文件夹下添加 SupplierListMaster.aspx 和 ProductsForSupplierDetails.aspx 在第三篇教程中定义页面结构时我们在 BasicReporting, Filtering, 和 CustomFormatting文件夹中增加了好几个起始 页面.我们还没有为这篇教程中添加起始页,在Filtering文件夹中增加两个页面: SupplierListMaster.aspx 和 ProductsForSupplierDetails.aspx. SupplierListMaster.aspx将会列出主记录(供应商) ProductsForSupplierDetails.aspx将会显示选中供应商的产品. 在创建这 两个页面时注意要让它们关联Site.master母版页. 图1: 在Filtering文件夹下添加 SupplierListMaster.aspx 和 ProductsForSupplierDetails.aspx 此外, 添加了两个文件到该项目后, 要确保相应地更新站点地图文件Web.sitemap. 对于该篇教程只要简单地使用下面 的XML内容做为元素的子节点 提示:使用K. Scott Allen的免费的Visual Studio Site Map Macro可以帮助你在新增ASP.NET页时自动地更新站点地 图. Step 2: SupplierListMaster.aspx中显示供应商列表 添加 SupplierListMaster.aspx 和 ProductsForSupplierDetails.aspx后,接下来就是 要在SupplierListMaster.aspx页面上创建一个显示供应商的GridView. 添加一个 GridView到页面上并绑定到一个新的ObjectDataSource, 这个ObjectDataSource 应该使用SuppliersBLL类的GetSuppliers()方法返回所有供应商. 图2: 选择 SuppliersBLL 类 图3: 配置ObjectDataSource 使用GetSuppliers() 方法 我们需 要在每个GridView行中包含一个”查看产品”链接,单击时该链接会转 到ProductsForSupplierDetails.aspx页面, 并在查询字符串(querystring)传递 选定行的SupplierID值.比如如果用户单击了供应商Tokyo Traders(SupplierID值 为4)的”查看产品”链接,将会转到 ProductsForSupplierDetails.aspx?SupplierID=4. 要实现该功能, 给 GridView添加一个HyperLinkField列, 它会为每个GridView行增加一个链接. 首 先在GridView智能标记上单击编辑列链接. 然后在左上角的列表中选择 HyperLinkField并单击新增把HyperLinkField添加到GridView的字段列表 中. 图4: 添加 HyperLinkField 到GridView HyperLinkField可以被 配置为在每一个GridView行中使用相同的文本或URL值,或是让这些值基于绑定到 特定行的数据值. 要指定一个所有行都一样的静态值使用HyperLinkField的Text 或NavigateUrl属性. 因为我们想让每一行的链接文本一致,设置HyperLinkField 的Text属性为”查看产品”. 图5: 设置HyperLinkField的Text属性为”查看产品 ” 要让text 或URL基于绑定到GridView行的 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |