`

AdvancedDatagrid分组、显示概要信息及问题

    博客分类:
  • Flex
阅读更多
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx" 
			   creationComplete="init(event)">
	
	<fx:Declarations>
		
	</fx:Declarations>
	
	<fx:Script>
		<![CDATA[
			import mx.collections.ArrayCollection;
			import mx.events.FlexEvent;
			
			
			[Bindable]
			private var collection:ArrayCollection;
			
			protected function init(event:FlexEvent):void
			{
		
				this.collection = new ArrayCollection();
				this.collection.addItem({name:'one',cost:3,city:'北京市'});
				this.collection.addItem({name:'one',cost:4,city:'天津市'});
				this.collection.addItem({name:'two',cost:1,city:'上海市'});
				this.collection.addItem({name:'one',cost:12,city:'重庆市'});
				this.collection.addItem({name:'one',cost:5,city:'河北'});
				this.collection.addItem({name:'two',cost:8,city:'广州'});
			}
			
		]]>
	</fx:Script>
	
	
	<mx:AdvancedDataGrid sortExpertMode="true" creationComplete="mygroup.refresh()">
		
		<mx:dataProvider>
			
			<mx:GroupingCollection2 id="mygroup" source="{collection}" >
				
				<mx:Grouping>
					
					<!-- 分组字段 -->
					<mx:GroupingField name="name">
						
						<!--用于定义组级别摘要的 SummaryRow 实例的数组。指定一个或多个 SummaryRow 实例以定义数据摘要-->
						<mx:summaries>
							
							<!-- 
								SummaryRow 类代表 AdvancedDataGrid 的摘要行。可使用 GroupingField 或 GroupingCollection 类的 summaries 属性创建有关数据组的摘要数据。在 AdvancedDataGrid 控件的现有行中显示摘要数据,或者在单独的行中显示。 
								GroupingField 或 GroupingCollection 类的 summaries 属性采用 SummaryRow 类的实例。然后,您可以使用 SummaryRow 类的 fields 属性指定一个或多个 SummaryField/SummaryField2 实例的 Array,这些实例定义用于创建摘要的数据字段。使用 GroupingCollection2 时需要使用 SummaryField2。
							 -->
							<mx:SummaryRow summaryPlacement="last">
								<mx:fields>
									<!--
									SummaryField2 类代表 SummaryRow 实例中的一个属性。每个 SummaryRow 实例都指定一个或多个用于创建数据摘要的 SummayField2 实例。 
									-->
									<mx:SummaryField2 dataField="cost" label="summary" summaryOperation="SUM" />
								</mx:fields>
							</mx:SummaryRow>
							
							
							<mx:SummaryRow summaryPlacement="last">
								<mx:fields>
									<!--
									SummaryField2 类代表 SummaryRow 实例中的一个属性。每个 SummaryRow 实例都指定一个或多个用于创建数据摘要的 SummayField2 实例。 
									-->
									<mx:SummaryField2 dataField="cost" label="summary1" summaryOperation="MIN" />
								</mx:fields>
							</mx:SummaryRow>
							
						</mx:summaries>
					</mx:GroupingField>
				</mx:Grouping>
				
			</mx:GroupingCollection2>
			
		</mx:dataProvider>
		
		<mx:columns>
			
			<mx:AdvancedDataGridColumn dataField="name" />
			<mx:AdvancedDataGridColumn dataField="cost" />
			<mx:AdvancedDataGridColumn dataField="city" />
			
		</mx:columns>
		
		<mx:rendererProviders>
			
			<!-- AdvancedDataGridRendererProvider 实例定义由 AdvancedDataGrid 控件使用的单个项呈示器的特征。使用 AdvancedDataGridRendererProvider 类的属性可配置 AdvancedDataGrid 控件中使用项呈示器的位置。  -->
			
			<!-- filed 呈示器的数据提供程序中的数据字段。此属性是可选的。 -->
			<!-- columnIndex 索引位置 columnSpan应跨的列数-->
			<mx:AdvancedDataGridRendererProvider dataField="summary" columnIndex="1" columnSpan="2">
				<mx:renderer>
					<fx:Component>
						<s:MXAdvancedDataGridItemRenderer >
							<s:Label text="Total number of items : {data.summary}" verticalCenter="0"/>
						</s:MXAdvancedDataGridItemRenderer>
					</fx:Component>
				</mx:renderer>
				
			</mx:AdvancedDataGridRendererProvider>
			
			<mx:AdvancedDataGridRendererProvider dataField="summary1" columnIndex="1" columnSpan="2">
				<mx:renderer>
					<fx:Component>
						<s:MXAdvancedDataGridItemRenderer >
							<s:Label text="Total number of items : {data.summary1}" verticalCenter="0"/>
						</s:MXAdvancedDataGridItemRenderer>
					</fx:Component>
				</mx:renderer>
				
			</mx:AdvancedDataGridRendererProvider>
		</mx:rendererProviders>
		
	</mx:AdvancedDataGrid>
	
	
	<!--
		AdvancedDataGridRendererProvider 中dataFiled在文档中表明该属性可选。删除之后会出现每一列都会有渲染器中的信息。
		如果在数据源中添加summary属性也同样会出现上述问题(包含summery、summery1的数据所在的行中均会显示)
	
		?????? 
	-->
	
</s:Application>
分享到:
评论

相关推荐

    AdvancedDataGrid多层分组表头导出Excel与后台JAVA交互

    要实现这种功能,我们需要在前端利用AdvancedDataGrid的API设置分组字段和显示样式。这通常涉及设置数据提供者、定义分组字段、配置列属性等步骤。在Flex或ActionScript中,我们可以使用AdvancedDataGrid的...

    AdvancedDataGrid综合应用

    这个主题涵盖了如何在Flex项目中有效地利用AdvancedDataGrid来实现数据的高级显示和操作。 1. **AdvancedDataGrid概述** AdvancedDataGrid是Adobe Flex中的一个组件,它主要用于展示结构化的数据,如表格数据。与...

    Flex应用AdvancedDataGrid表头皮肤

    表头皮肤不仅包括了列标题的显示样式,还包括了排序指示器、分组折叠按钮等元素。在Flex中,我们可以使用Spark皮肤机制来定制AdvancedDataGrid的表头皮肤。 1. **Spark皮肤机制**:Spark皮肤是Flex 4引入的新特性,...

    Flex技术中AdvancedDataGrid使用方法

    以上介绍了一些关于`AdvancedDataGrid`的基础用法,包括多列排序、自定义行和列样式、显示分层数据以及创建多列分组。这些特性极大地增强了`AdvancedDataGrid`在数据展示方面的灵活性和功能性。

    AdvancedDataGrid或datagrid导出到excel.rar

    AdvancedDataGrid或datagrid导出到excel.rar AdvancedDataGrid或datagrid导出到excel.rar AdvancedDataGrid或datagrid导出到excel.rar

    最新的AdvancedDataGrid行嵌套AdvancedDataGrid实现

    最新的AdvancedDataGrid行嵌套AdvancedDataGrid实现,该例子只是实现AdvancedDataGrid利用AdvancedDataGridRendererProvider在行中渲染另外一个AdvancedDataGrid,当然也可以渲染其它任何想渲染的界面或者组件,价值...

    AdvancedDataGrid 动态添加节点 控制树

    在Flex开发中,AdvancedDataGrid是一个强大的组件,用于展示大量数据并进行复杂的数据操作,如分组、排序和过滤。这个组件特别适用于构建数据密集型的用户界面,尤其是在需要显示层次结构数据时。本篇文章将深入探讨...

    felx AdvancedDataGrid 多选框 单选框

    非常好用的 felx AdvancedDataGrid 多选框 单选框支持渲染器,不需改到AdvancedDataGrid 代码; 支持 xml 数据源的网上可查到一些, 但这个可是 支持 Array 类型数据源的。

    flex 使用AdvancedDataGrid组件的课件管理系统

    1. 课件列表:AdvancedDataGrid可以显示课件的基本信息,如名称、作者、创建日期等。 2. 分类查看:按照科目、类型等对课件进行分组,便于用户查找。 3. 搜索过滤:用户可以根据关键词搜索课件,或者设置条件进行...

    flex-datagrid-advancedDataGrid-demo

    4. 数据分组:如何使用AdvancedDataGrid的grouping功能,根据特定字段对数据进行分组,使用户可以折叠/展开组。 5. 展开和折叠:在AdvancedDataGrid中,如何实现嵌套数据的展开和折叠,以及如何监听和响应这些事件...

    表格演示(1)AdvancedDataGrid应用

    同时,AdvancedDataGrid还允许自定义分组头部的显示,可以创建自定义的GroupHeaderRenderer来改变默认样式。 在高级特性中,AdvancedDataGrid的Drag-and-Drop功能使得用户能自由地调整数据项的位置,这对于需要动态...

    DataGrid和AdvancedDataGrid CheckBox全选功能1.1

    在本文中,我们将深入探讨如何在Flex中实现DataGrid和AdvancedDataGrid组件的...希望这些信息能帮助你理解和实现这个功能,如果你在实施过程中遇到任何问题,记得查看提供的博客链接或进一步研究Flex的相关文档。

    FLEX AdvancedDataGrid 复选框

    `AdvancedDataGridGroupItemRendererEx.as`可能就是一个自定义的组项渲染器,专门用于在AdvancedDataGrid的分组行中显示复选框。组项渲染器扩展了默认的`AdvancedDataGridGroupItemRenderer`类,增加了复选框功能,...

    advancedDataGrid单击逐级展开的例子

    `advancedDataGrid`是Flex SDK中的一个强大组件,它扩展了基本的`dataGrid`,增加了许多高级特性,如分组、排序、过滤、拖放以及多级展开。对于复杂的层次数据,`advancedDataGrid`通过使用`Grouping`和`...

    SparkTree_AdvancedDataGrid

    2. **自定义列**:AdvancedDataGrid支持自定义列渲染器,开发者可以根据需求定制列的显示方式,例如添加图片、按钮等元素。 3. **数据分组**:通过设置数据提供器的grouping属性,可以实现数据的分组展示,便于用户...

    AdvancedDataGrid动态加载.rar

    在Flex 3中,AdvancedDataGrid控件是一个强大的数据展示组件,特别适合处理大量数据集。这个"AdvancedDataGrid动态加载.rar"压缩包文件显然包含了能够直接运行的代码示例,用于演示如何实现AdvancedDataGrid的动态...

    AdvancedDataGrid 对sdk3.5不支持,对3.2支持方案(合并单元格)

    这个功能通常用于财务报表、时间表或者任何需要跨行或跨列显示信息的应用场景。要实现这个功能,我们需要关注以下几个关键点: 1. **自定义ItemRenderer**:首先,我们需要创建一个自定义的ItemRenderer,这个渲染...

    AdvancedDataGrid多表头与树形表格(数据统计)

    AdvancedDataGrid是Flex中一个功能强大的组件,它允许用户以复杂的方式展示大量数据,包括分组、排序、过滤和自定义列布局。 首先,我们要理解什么是多表头。在数据展示中,多表头是指在表格中拥有多个层次的列标题...

Global site tag (gtag.js) - Google Analytics