• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > 在ASP.NET 2.0中操作数据之十五:在GridView的页脚中显示统计信息

在ASP.NET 2.0中操作数据之十五:在GridView的页脚中显示统计信息

作者:heker2007 字体:[增加 减小] 来源:互联网 时间:2017-05-11

heker2007通过本文主要向大家介绍了gridview asp.net,asp:gridview,asp gridview分页,asp:gridview属性,asp.net等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

导言

  除了需要了解产品的单价、库存量和订货量,并按等级排序之外,用户可能还对统计信息感兴趣,比如说平均价格、库存总量等等。这些统计信息常常显示在报表最下面的一个统计行中。GridView控件可以含有一个页脚行,我们可以通过编程将统计数据插入到它的单元格里面去。这个任务给了我们以下3个挑战:

1.配置GridView以显示它的页脚行

2.确定统计数据。即我们应该如何计算平均价格还有库存总量?

3.将统计信息插入到页脚行的相应的单元格中

  在本节教程中,我们将会看到如何去征服这些挑战。另外呢,我们将创建一个页面,它含有一个列出所有“类别”的下拉框,选择一个“类别”就可以在GridView中显示这个类别的产品。GridView中包含一个页脚行,用于显示此类产品的平均价格、库存总量和订货总量。

http://files.weikejianghu.com/file_images/article/201605/2016050617181278.png

图一:统计信息显示在GridView的页脚行中

  由于含有“类别”到“产品”的主/从界面,所有本节是建立在前面的“使用DropDownList进行主/从过滤”节中所讨论的那些概念的基础上的。如果你还没有看过那一节的话,在继续本节的学习之前,还是去看看比较好。

第一节:添加“类别”下拉框和“产品”GridView

  往GridView中添加页脚行之前,让我们先来简单的建立一个主/从报表。一旦我们完成了这第一步的工作,我们就可以来看看如何加入统计数据了。

  首先打开CustomFormatting文件夹中的SummaryDataInFooter.aspx页面。添加一个DropDownList控件,并将其ID设置为Categories。然后,在这个DropDownList的智能标签上点击“选择数据源(Choose Data Source)”,添加一个新的调用CategoriesBLL类的GetCategories ()方法的ObjectDataSource控件,将这个ObjectDataSource命名为CategoriesDataSource。

http://files.weikejianghu.com/file_images/article/201605/2016050617181579.png

图二:添加一个新的名为CategoriesDataSource的ObjectDataSource控件

http://files.weikejianghu.com/file_images/article/201605/2016050617181580.png

图三:使这个ObjectDataSource控件调用CategoriesBLL类的GetCategories ()方法

  再配置了了ObjectDataSource之后,向导会将我们返回到DropDownList的数据源配置向导那里,在这儿我们可以指定哪个字段需要显示以及哪个字段应该作为DropDownList的ListItem的值。我们将CategoryName字段拿来显示,而把CategoryID拿来作为值。

http://files.weikejianghu.com/file_images/article/201605/2016050617181981.png

图四:分别使用CategoryName和CategoryID来作为ListItem的文本和值

  现在,我们便在系统中有了一个能列出类别的DropDownList了。现在我们需要添加一个根据所选的类别来列出产品的GridView。不过,在此之前,让我们先花点时间到DropDownList的智能标签中勾上“启用自动回发(Enable AutoPostBack)”复选框。我们在前面的“使用DropDownList进行主/从过滤 lidong6”节中讨论过,在将DropDownList的AutoPostBack属性设置为true之后,只要DropDownList的值发生了变化,页面就会回发。这样就可以刷新GridView以显示新选择的类别的产品了。如果AutoPostBack属性设置为false(默认值),改变类别将不会导致回发,因此也就不能刷新产品列表了。

http://files.weikejianghu.com/file_images/article/201605/2016050617181982.png

图五:在DropDownList的智能标签中勾上“启用自动回发”复选框

  添加一个GridView控件到页面上以便可以根据选定的类别来显示产品。将这个GridView的ID设置为ProductsInCategory,并将其绑定到一个新的名为ProductsInCategoryDataSource的ObjectDataSource上。

http://files.weikejianghu.com/file_images/article/201605/2016050617181983.png

图六:添加一个新的名为ProductsInCategoryDataSource的ObjectDataSource

配置这个ObjectDataSource,以使其调用ProductsBLL类的GetProductsByCategoryID(categoryID)方法。

http://files.weikejianghu.com/file_images/article/201605/2016050617181984.png

图七:使这个ObjectDataSource调用GetProductsByCategoryID(categoryID)方法

  由于GetProductsByCategoryID(categoryID)方法需要一个参数,所以在向导的最后一步里,我们可以指定参数值的数据源。为了根据显示所选的类别来显示产品,这个参数应该从Categories下拉框中获取。

http://files.weikejianghu.com/file_images/article/201605/2016050617181985.png

图八:从Catefories下拉框中获取categoryID参数

  完成了向导之后,这个GridView将会包含一些对应于产品的每一个属性的BoundField。让我们来清理一下这些BoundField,剩下要显示的ProductName、UnitPrice、UnitsInStock以及UnitsOnOrder就可以了。然后你可以随便的给剩下的这些BoundField添加一些字段级的设置(比如说将UnitPrice格式化为货币形式)。做了这些更改之后,这个GridView的声明标记应该是这个样子:

<asp:GridView ID="ProductsInCategory" runat="server"
  AutoGenerateColumns="False" DataKeyNames="ProductID"
  DataSourceID="ProductsInCategoryDataSource" EnableViewState="False">
  <Columns>
    <asp:BoundField DataField="ProductName" HeaderText="Product"
     SortExpression="ProductName" />
    <asp:BoundField DataField="UnitPrice" DataFormatString="{0:c}"
      HeaderText="Price"
      HtmlEncode="False" SortExpression="UnitPrice">
      <ItemStyle HorizontalAlign="Right" />
    </asp:BoundField>
    <asp:BoundField DataField="UnitsInStock"
     HeaderText="Units In Stock" SortExpression="UnitsInStock">
      <ItemStyle HorizontalAlign="Right" />
    </asp:BoundField>
    <asp:BoundField DataField="UnitsOnOrder"
      HeaderText="Units On Order" SortExpression="UnitsOnOrder">
      <ItemStyle HorizontalAlign="Right" />
    </asp:BoundField>
  </Columns>
</asp:GridView>
</div>

现在,我们就拥有了一个可以根据所选类别来显示相关的产品的名称、单价、库存量以及订货量的功能齐全的主/从报表了。

http://files.weikejianghu.com/file_images/article/201605/2016050617181986.png

图九:现在的效果(译者注:估计原文这里弄错了,写得跟图八的一样。这里的原文是“Figure 9: Get the categoryID Parameter Value from the Selected Categories DropDownList”,图八的原文是“Figure 8: Get the categoryID Parameter Value from the Selected Categories DropDownList”)

第二步:在GridView中显示页脚

  GridView控件可以显示页眉和页脚行。这些行的显示与否分别取决于ShowHeader和ShowFooter属性,默认情况下,ShowHeader的值为true,而ShowFooter的值为false。要显示页脚行的话,我们只需简单的将ShowFooter属性设置为true就可以了。

http://files.weikejianghu.com/file_images/article/201605/2016050617182087.png

图十:将GridView的ShowFooter属性设置为true

  GridView中所定义的每一个字段都在页脚行中有一个对应的单元格,不过这些单元格默认是空的。花点时间到浏览器中看看我们的成果。由于我们将GridView的ShowFooter属性设置为true了,所以GridView现在包含了一个空的页脚行。

http://files.weikejianghu.com/file_images/article/201605/2016050617182088.png

图十一:现在,GridView有了一个页脚行

  图十一中的页脚行并不明显,因为它的背景是白色的。让我们在Styles.css

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • ASP.NET GridView的Bootstrap分页样式
  • asp.net实现固定GridView标题栏的方法(冻结列功能)
  • 在ASP.NET 2.0中操作数据之六十四:GridView批量添加数据
  • 在ASP.NET 2.0中操作数据之六十三:GridView实现批量删除数据
  • 在ASP.NET 2.0中操作数据之六十二:GridView批量更新数据
  • 在ASP.NET 2.0中操作数据之五十一:从GridView的页脚插入新记录
  • 在ASP.NET 2.0中操作数据之四十九:为GridView控件添加RadioButton
  • 在ASP.NET 2.0中操作数据之二十八:GridView里的Button
  • 在ASP.NET 2.0中操作数据之十五:在GridView的页脚中显示统计信息
  • 在ASP.NET 2.0中操作数据之十二:在GridView控件中使用TemplateField

相关文章

  • 2017-05-11litjson读取数据示例
  • 2017-05-11关于C# if语句中并列条件的执行
  • 2017-05-11利用ASP.NET MVC和Bootstrap快速搭建响应式个人博客站(一)
  • 2017-05-11asp.net验证一个字符串是否符合指定的正则表达式
  • 2017-05-11GridView选择性导出Excel解决方案
  • 2017-05-11asp.net后台关闭当前页面并传值的两种方法
  • 2017-05-11asp.net计算一串数字中每个数字出现的次数
  • 2017-05-11ADO.Net对oracle数据库操作的实例代码
  • 2017-05-11ASP.NET网页显示LED字体的方法
  • 2017-05-11C# Math.Round()函数问题

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • ASP.NET编程时遇到GridView的一个问题 激发了未处理的事件"PageIndexChanging"
    • asp.net下配置数据源时出现: 未将对象引用设置到对象的实例。
    • asp.net(c#)中取得文件物理路径
    • asp.net 代码隐藏的编码模型
    • 在ASP.NET 2.0中操作数据之六十:创建一个自定义的Database-Driven Site Map Provider
    • ASP.NET Lable中进行换行解决方案
    • GridView生成的HTML代码示例对比
    • .NET微信公众号客服接口
    • Win7安装Visual Studio 2015失败的解决方法
    • Asp.net内置对象之Server对象(概述及应用)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有