试图理解为什么在flex(flash builder 4)中创建组件时,我无法从file->新组件和引用“data”创建组件,但稍有不同的示例有效。该组件将用作高级数据网格渲染器。
这个编译很好:
<mx:VBox xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" height="100%" width="100%" >
<s:RichText text="{data.presentingProblemNotes}"/>
</mx:VBox>
这个不编译,不喜欢data.presentingProblemNotes
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" width="100%" height="100%">
<s:RichText text="{data.presentingProblemNotes}"/>
</s:Group>
错误发生在“数据”变量上 - 它不存在。
答案 0 :(得分:3)
在mx组件中,所有UIComponent都有一个'data'属性,该属性用于项目渲染器,但已在Spark组件中删除,因为并非所有UIComponent都需要它。他们现在需要扩展DataRenderer才能发挥作用。在您的特定情况下,您可以这样做:
<s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" width="100%" height="100%">
<s:RichText text="{data.presentingProblemNotes}"/>
</s:ItemRenderer>