| Flex 2 開発ガイド > Flex アプリケーションのユーザーインターフェイスの作成 > データプロバイダおよびコレクションの使用 > 階層データプロバイダの使用 | |||
ツリーのブランチとリーフ、Menu サブメニューとアイテムなど、ノードとサブノードから成るネストした階層を表示するコントロールでは、階層データプロバイダを使用します。次のコントロールは、階層データプロバイダを利用します。
階層コンポーネントはすべて、データプロバイダの操作に同じメカニズムを使用します。このセクションの例では Tree コントロールを使用していますが、これは他のコンポーネントにも適用できます。
Flex フレームワークはデフォルトで、次の 2 種類の階層データソースをサポートします。
XML は次のいずれかにすることができます。整形式の XML を含む String、XML、XMLList、XMLListCollection オブジェクト (<mx:XML> および <mx:XMLList> コンパイル時タグによって生成されるオブジェクトを含みます。これらのタグはデータバインディングをサポートします。データバインディングを ActionScript で直接実行することはできません)。Flex では、整形式 XML のネスト階層を反映する Tree またはメニューコントロールを自動的に構成できます。
Object は、ノードの子が children フィールドに格納された構造を持つ、ネストされた Object または Object サブクラス (Array または ArrayCollection オブジェクトを含む) の任意の組み合わせにすることができます。詳細については、カスタムデータ記述子の作成を参照してください。<mx:Model> コンパイル時タグを使用して、データバインディングをサポートするネストされたオブジェクトを作成できますが、その場合はTree およびメニューコントロールでの <mx:Model> タグの使用で定義された構造に従う必要があります。
子を可変名のフィールドに格納できるネストされた Object など、上記以外の階層データプロバイダ構造のサポートも追加できます。
Flex 2.01