使用基于 List 的组件

List、DataGrid 和 TileList 组件均继承自 SelectableList 基类。因此,这些组件被视为基于 List 的组件。ComboBox 由一个文本框和一个 List 组成,因此它也是基于 List 的组件。

List 由若干行组成。DataGrid 和 TileList 由可分成多个列的若干行组成。行和列的相交部分即为单元格。对于由仅包含一列的若干行组成的 List,它的每一行都是一个单元格。单元格有以下两个重要方面:

  • 单元格中保存的数据值称为项目。“项目”是用于将信息单元存储在 List 中的 ActionScript 对象。可以将 List 看作一个数组,此数组中的每个索引空间就是一个项目。在 List 中,项目是一个对象,该对象通常有一个显示出来的 label 属性和一个用于存储数据的 data 属性。“数据提供程序”是 List 中项目的数据模型。只需将数据提供程序赋给基于 List 的组件的 dataProvider 属性,即可填充该组件。

  • 单元格可以保存不同类型的数据:从文本到图像、影片剪辑或您可以创建的任何类。出于此原因,单元格的绘制或渲染方式必须与其内容相适应。因此,基于 List 的组件有一个用于渲染其单元格的“单元格渲染器”。对于 DataGrid,每一列都是一个 DataGridColumn 对象,此对象也有一个 cellRenderer 属性,所以每一列都可以用适合其内容的方式进行渲染。

    所有基于 List 的组件都有 cellRenderer dataProvider 属性,您可以设置这些属性以加载和渲染这些组件的单元格。有关使用这些属性和使用基于 List 的组件的信息,请参阅 使用 DataProvider 使用 CellRenderer