作者chengchieh (chieh)
看板Flash
标题[问题] flex itemrenderer
时间Tue Sep 22 18:29:07 2009
架构为db捞资料出来丢给arraycollection
然後datagrid的dataprovider是绑在那个arraycollection上面
在datagrid中有几个栏位有建itemrenderer
内容物就只是label
该label显示的文字则是自订一个function去判定
配合该栏位的值(bool)来显示 是/否
同时我在label上面建了一个mouseclick的事件
点击之後就会改变它的bool值
如果是从db取得的资料...
在我click之後都会改变label的显示内容
但是当我动态新增资料时
click之後不会改变显示内容...
but...我又再多加一笔资料时
刚刚那笔不会动的新资料就会变动成它应该显示的内容
而..我再继续去回点它...依然不为所动
不知道有人有遇过相同的情况吗??
ac里面的资料源有变更
但是label的text没有去做更新...
下面是该区块的code
应该不难看出要做啥...
希望有人可以帮忙解答一下....
<mx:DataGridColumn dataField="display" headerText="是否显示">
<mx:itemRenderer>
<mx:Component>
<mx:Canvas width="100%" height="100%">
<mx:Script>
<![CDATA[
private function getLabel(bool:Boolean):String
{
if (bool)
return "是";
else
return "否";
}
]]>
</mx:Script>
<mx:Label text="{getLabel(data.display)}" mouseChildren="false"
click="data.display = !data.display"/>
</mx:Canvas>
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.63.2.183