`
Lance9118
  • 浏览: 12574 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

flex 动态构建 datagrid

阅读更多
1 DataGrid 与 AdvancedDataGrid
先提下这个的原因就是这项目时有一个问题让我走了不少弯路。DataGrid的dataField支持访问类成员变量的属性 而AdvancedDataGrid不支持。
package myAs
{
	[Bindable]
	[RemoteClass(alias = "ms.model.PorderDetail")]
	public class PorderDetailF
	{
		
		public var  pordid : int;
		public var  porder : Object; // 主表ID
		public var  item : Object; // 商品ID
		public var  quantity :int ; // 数量
		public var  price :Number ; // 总价格
		public var   store :Object ; // 进入仓库ID
		public var  code : String;
		public function PorderDetailF()
		{
		}
	}
}
可以用<mx:DataGridColumn  width="100" headerText="仓库名称" dataField="store.name" />访问  而AdvancedDataGrid就不行

2 动态构建DataGrid

<fx:Declarations>
		<!-- 将非可视元素(例如服务、值对象)放在此处 -->
		<mx:ChannelSet id="cs">
			<mx:AMFChannel uri="/mobile-store-system/messagebroker/amf"/>
		</mx:ChannelSet>
		<mx:RemoteObject id="StoreInOutManager"   
						 destination="storeInOutManager" channelSet="{cs}">
		<mx:method name="getStoreInOutByDate" result="handleResult_getStoreInOutByDate(event)"/>
		</mx:RemoteObject> 
		
		<mx:RemoteObject id="InOutDetail"   
						 destination="inOutDetailManager" channelSet="{cs}">
			<mx:method name="GetlistDetailbyItem" result="handleResult_GetlistDetailbyItem(event)"/> 
		
			
		</mx:RemoteObject> 
		
	</fx:Declarations>
<fx:Script>
import mx.controls.DataGrid;
import mx.controls.dataGridClasses.DataGridColumn;
public function init()
			{
				this.title=dataType+"   "+"于  "+startTime+" 至 "+endTime;
				
				if(dataType=="药品销售详细报表")
				{
				
					
					var column1:DataGridColumn = new DataGridColumn();
					column1.headerText = "单据号";
					column1.dataField = "code";
					//column1.width=100;
					var column2:DataGridColumn = new DataGridColumn();
					column2.headerText = "总金额";
					column2.dataField = "totalM";
					//column2.width=100;
					var column3:DataGridColumn = new DataGridColumn();
					column3.headerText = "操作员";
					column3.dataField = "operator";
					//column3.width=100;
					var column4:DataGridColumn = new DataGridColumn();
					column4.headerText = "日期";
					column4.dataField = "billDate";
					//column4.width=250;
					
					myDg.columns = myDg.columns.concat(column1);
					myDg.columns = myDg.columns.concat(column2);
					myDg.columns = myDg.columns.concat(column3);
					myDg.columns = myDg.columns.concat(column4);
	                
					StoreInOutManager.getStoreInOutByDate(startTime,endTime);
				}
				else if(dataType=="单一药品收入详细报表")
				{
					
					
					var column1:DataGridColumn = new DataGridColumn();
					column1.headerText = "数量";
					column1.dataField = "quantity";
					//column1.width=100;
					var column2:DataGridColumn = new DataGridColumn();
					column2.headerText = "总价";
					column2.dataField = "price";
					//column2.width=150;
					var column3:DataGridColumn = new DataGridColumn();
					column3.headerText = "日期";
					column3.dataField = "date";
				//	column3.width=250;
					
					myDg.columns = myDg.columns.concat(column1);
					myDg.columns = myDg.columns.concat(column2);
					myDg.columns = myDg.columns.concat(column3);
			
					
					
					InOutDetail.GetlistDetailbyItem(startTime,endTime,singleItemName);
				}
				
			}
public function handleResult_GetlistDetailbyItem(event:ResultEvent):void
			{
				var tempList :  Array ;
				if(event.result!=null){
					tempList= ArrayUtil.toArray(event.result);
					myDg.dataProvider=tempList[0];
				}
				else
				{
					Alert.show("数据提供异常,无法生成图表");
				}
			}
			public function handleResult_getStoreInOutByDate(event:ResultEvent):void
			{
				var tempList :  Array ;
				if(event.result!=null){
					tempList= ArrayUtil.toArray(event.result);
					myDg.dataProvider=tempList[0];
				}
				else
				{
					Alert.show("数据提供异常,无法生成图表");
				}
			}

</fx:Script>


<mx:DataGrid id="myDg" width="100%" height="100%">




关于 datagrid 各属性可以参考
http://blog.myspace.cn/e/403559246.htm
1
8
分享到:
评论
2 楼 kreding 2011-11-10  



谢谢分享!


1 楼 lfrick 2011-10-02  
谢谢分享!

相关推荐

    Flex4之DataGrid四个的示例【客户端和服务器端】

    在IT行业中,Flex4是一种基于ActionScript 3.0的开放源码框架,用于构建富互联网应用程序(RIA)。它提供了一套强大的组件库,其中包括DataGrid,这是一个常用于展示和操作表格数据的强大组件。本篇内容将深入探讨...

    flex组件之DataGrid高级用法实例源码

    在Flex中,DataGrid通常与数据提供者(如 ArrayCollection 或 XML)关联,用于动态展示数据。 二、高级用法详解 1. **自定义列** DataGrid允许我们自定义列的显示样式和行为。例如,可以创建自定义的Column类,...

    FLEX强大的datagrid

    在Flex开发中,`DataGrid`控件是一个非常重要的组件,它用于展示数据集,并允许用户进行交互操作,如排序、选择和编辑。标题提到的“FLEX强大的datagrid”指的是对Flex原生`DataGrid`组件的功能增强或优化,使其具有...

    Flex实践——Datagrid的打印预览与打印

    在IT行业中,Flex是一种基于ActionScript 3.0和Flash Player的开源框架,主要用于构建富互联网应用程序(RIA)。本文将围绕“Flex实践——Datagrid的打印预览与打印”这一主题,深入探讨如何在Flex应用中实现数据...

    flex做的datagrid留言板

    综上所述,"flex做的datagrid留言板"是一个利用Flex组件和Web服务技术构建的交互性Web应用,它结合了数据展示、用户交互和数据库操作,为用户提供了一个方便的在线留言平台。在开发过程中,需要熟练掌握Flex的组件...

    flex DataGrid xml 动态数据列表实例

    在这个实例中,我们将探讨如何利用Flex的`DataGrid`组件结合XML文件来实现动态数据列表。 首先,让我们深入了解`DataGrid`组件。`DataGrid`是Flex提供的一个可自定义的、可滚动的数据容器,它允许用户以网格形式...

    动态可编辑的DataGrid

    本篇文章将深入探讨Flex中的动态DataGrid及其在增删改查操作中的应用。 动态DataGrid允许我们在运行时根据需求动态地生成列和行,这意味着我们可以在程序执行过程中根据服务器返回的数据结构来构建Grid。这为开发者...

    flex datagrid 嵌套checkbox实现全选

    在Flex开发中,数据网格...总结,这个Flex3示例展示了如何在DataGrid中嵌套复选框并实现全选功能,这对于构建交互式的数据管理界面至关重要。通过学习和实践,开发者可以创建更灵活、用户友好的数据操作界面。

    flex datagrid

    DataGrid支持动态列生成,可以自定义列的显示和行为。 3. **ArrayTest.mxml**:这个文件可能包含一个示例,展示了如何使用ArrayCollection作为数据源驱动DataGrid。ArrayCollection是ActionScript中轻量级的数据...

    Flex4.5之DataGrid表格组件的运用.pdf

    ### Flex4.5中DataGrid表格组件的详细运用 #### 16.1 DataGrid的认识 ...在实际开发过程中,还可以进一步对DataGrid进行更多的定制化操作,例如自定义样式、动态加载数据等,从而满足不同的业务需求。

    flex 把datagrid的内容导出到Excel

    在IT行业中,Flex是一种基于ActionScript 3的开源框架,用于构建富互联网应用程序(RIA)。它允许开发者创建具有丰富交互性和动态数据展示的Web应用。本文将深入探讨如何使用Flex来实现一个功能,即把Datagrid组件中...

    Flex4_DataGrid_Tree_条目渲染器_源码

    总之,了解并熟练掌握Flex4的DataGrid和Tree组件,以及如何自定义条目渲染器,对于构建用户界面和提升用户体验至关重要。这不仅涉及到数据绑定、事件处理,还涵盖了组件的可扩展性和自定义性,是Flex开发中的重要...

    在flex的dataGrid控件中显示图片的实践

    DataGrid是Flex提供的一个强大的组件,它可以用来展示动态数据集,包括文本、数字,以及在本例中的图片。 在Flex中显示图片通常涉及到以下步骤: 1. **数据模型**:首先,我们需要定义一个数据模型,包含用于存储...

    flex 三状态多选 自动分页DataGrid

    在Flex开发中,DataGrid控件是用于展示数据表格的重要组件。它允许用户以网格形式查看和操作数据,尤其在处理大量数据时,自动分页功能变得至关重要,以提高用户体验和应用性能。在这个主题中,“三状态多选”功能则...

    Flex FooterSpark DataGrid 表格制作

    Flex是基于ActionScript和MXML的开源框架,用于构建富互联网应用程序(RIA)。FooterSpark DataGrid是Flex 4.x(也称为Spark)中的一个组件,它提供了比早期版本(如MX DataGrid)更强大和灵活的功能。 1. **Spark ...

    利用ASP架构将flex中的datagrid数据导出为excel表格方式。

    Flex,则是Adobe开发的一种用于构建富互联网应用(RIA)的框架,主要基于ActionScript编程语言和Flash Player运行时环境。DataGrid是Flex中一个常用的组件,用于展示结构化的数据集,类似于HTML中的表格。 要将Flex...

    flex 的datagrid分页

    Flex是Adobe公司开发的一种富互联网应用(RIA)开发框架,用于构建具有动态图形、交互性和数据可视化功能的Web应用程序。在Flex中,DataGrid组件是一个非常重要的数据展示控件,常用于显示大量的结构化数据,并支持...

Global site tag (gtag.js) - Google Analytics