在Flex中列表组件(DataGridBase, List, TileBase ),数据容器(DataGroup和SkinableDataContainer),都提供了dataProvider属性,我们可以将数据源绑定到这个属性上,让组件按照所需的格式来显示数据。
但是mx组件和spark组件所接受的dataProvider类型是不同的,mx的类型是Object,spark类型是IList。
mx中列表组件继承自ListBase类,如下代码是设置数据源的。
public function set dataProvider(value:Object):void
{
if (collection)
{
collection.removeEventListener(CollectionEvent.COLLECTION_CHANGE, collectionChangeHandler);
}
if (value is Array)
{
collection = new ArrayCollection(value as Array);
}
else if (value is ICollectionView)
{
collection = ICollectionView(value);
}
else if (value is IList)
{
collection = new ListCollectionView(IList(value));
}
else if (value is XMLList)
{
collection = new XMLListCollection(value as XMLList);
}
else if (value is XML)
{
var xl:XMLList = new XMLList();
xl += value;
collection = new XMLListCollection(xl);
}
else
{
// convert it to an array containing this one item
var tmp:Array = [];
if (value != null)
tmp.push(value);
collection = new ArrayCollection(tmp);
}
}
、
从上面的代码可以看到列表组件支持的数据类型有Array、ICollectionView、XMLListCollection、ArrayCollection等。
在spark中,dataProvider类型必须是IList类型。 ArrayList, AsyncListView, ListCollectionView 类实现了IList接口,但是Array类没有实现IList接口,因此在sprak中Array就不能做为列表组件的数据源。
ArrayList 类是使用后备 Array 作为数据源的 IList 的一个简单实现,也就是说,它比ArrayCollection更轻量级,想ArrayCollection具备的过滤,排序等功能,ArrayList是不具备的。如果您用不到ArrayCollection的一些复杂功能,可以使用ArrayList来获取更好的执行效率。
分享到:
相关推荐
在本文中,我们将深入探讨如何在Flex中设置`DataGrid`的数据提供者(`dataProvider`),以便动态地填充数据。`DataGrid`是Adobe Flex中一个非常重要的组件,它用于显示和操作网格形式的数据。理解如何有效地设置数据...
在Flex开发中,数据展示控件常常需要与数据提供者(DataProvider)进行绑定,以便将数据模型呈现出来。本文将详细探讨如何使用`ArrayCollection`作为Flex中的`Tree`控件的数据提供者,以替代通常使用的XML数据源。 ...
MX25L1006E主要用于微控制器、嵌入式系统、物联网设备和各种需要小容量数据存储的场合。 3. **引脚配置**: MX25L1006E的引脚布局和功能定义是其正确操作的关键。通常包括SPI接口的时钟输入(SCK)、串行数据输入/...
在本资源摘要中,我们将对MX25L25635E串行Flash存储器的datasheet进行详细分析,涵盖其特性、pin配置、数据保护机制、存储器组织结构、设备操作模式等方面。 特性 MX25L25635E串行Flash存储器是一款高性能的存储器...
快速创建MX和Spark组件。 如何使用 在VSCode中安装扩展 打开mxml文件,开始输入组件名称并选择代码段 注意:要在VSCode中创建Flex项目,请安装。 片段 AdvancedDataGrid BorderContainer Box MX Button Spark ...
MX25L128和MX25L256是来自Microchip Technology公司的串行闪存芯片,它们提供了高容量、低功耗的非易失性存储解决方案,广泛应用于嵌入式系统、物联网设备、以及各种需要大量存储空间的微控制器应用中。 MX25L128...
i.MX35 Auto Application Processor 家族是专为汽车娱乐系统和导航应用设计的一款高性能处理器。它已通过 AEC-Q100 Grade 3 认证,并能够在高达 85°C 的环境温度下正常运行。 该处理器代表了低功耗、高性能应用...
《MXFramework与SpringBoot...通过深入学习和实践《MXFramework与SpringBoot开发实战》,开发者不仅能掌握这两项技术的基础用法,还能进一步理解如何在实际项目中灵活运用,提升开发效率,打造出高效稳定的软件系统。
在编程手册中,你将了解到如何使用MX Component来设计和实现工业控制系统的用户界面。这通常包括以下几个方面: 1. **组件库**:MX Component提供了多种预定义的组件,如按钮、文本框、图表、指示灯等,这些都是...
MX:DataGrid是Flex中的一个组件,用于展示数据集并进行交互操作,如排序、选择和编辑。本篇文章将重点讲解如何在Flex中利用MX:DataGrid实现数据过滤显示的功能。 首先,数据过滤是指根据特定条件筛选数据,只显示...
这些路由器是SDN(Software Defined Networking)技术驱动的,能够提供业界领先的性能和稳定性,帮助企业在数字化转型中取得成功。 【产品特点】 1. **高性能与可扩展性**:MX系列路由器搭载了Junos操作系统和可...
在"商标和许可协议"中,手册介绍了佳能公司的商标和许可协议,提醒用户在使用打印机时应当注意相关的商标和许可协议。 在"搜索提示"中,手册提供了搜索提示的方法,帮助用户快速地查找在线手册中的相关信息。 在...
MxComponent4是三菱公司为开发者提供的一款强大的组件库,它主要用于在C#和VB.NET等.NET框架下进行自动化控制系统的开发。这款组件库支持与三菱PLC(可编程逻辑控制器)进行通信,提供了丰富的功能,使得程序员能够...
该器件在设计时注重了性能、可靠性和灵活性,广泛应用于嵌入式系统中的程序代码存储或数据存储。 该器件的主要特性包括: - 支持标准的SPI协议和Quad I/O操作; - 256 Mbit的存储容量; - 支持多种电源电压操作,...
<mx:Tree id="myTree" dataProvider="{treeData}" /> </mx:Application> ``` 其中,`dataProvider`属性是用于绑定显示数据的集合。 2. **数据提供器(DataProvider)** `Tree`控件的数据通过`dataProvider`...
音频处理器是一种专业音频设备,用于处理和优化音频信号,确保声音在各种环境中的清晰度、平衡性和质量。它能够进行多种音频处理操作,如均衡、压缩、限幅、混响等,以满足不同场景下的音频需求。 #### mx16——...
Freescale i.mx31 datasheet
- **能源管理**:在能源消耗监测和优化过程中,MX OPC Server 可以帮助跟踪和分析能耗,提高能源效率。 - **生产数据分析**:结合历史数据,MX OPC Server 可以协助进行生产效率提升和工艺优化。 **安装与配置** ...
MX DataGrid和Spark DataGrid在设计上存在一些根本的区别,导致MX组件上的解决方案可能不适用于Spark组件。下面,我们将深入探讨如何在Spark DataGrid中实现拖动删除选中行的功能。 首先,了解Spark DataGrid的基本...