【问题标题】:Flex Repeater componentFlex 中继器组件
【发布时间】:2012-04-20 16:26:18
【问题描述】:

在 flex 3 中,我使用中继器组件在画布中创建了子组件。我只想对转发器创建的子组件之一进行更改。是否有任何方法或方式来访问特定的子组件并进行所需的属性更改?

<mx:Repeater id="myrep" dataProvider="{myAC}"> 
    <mx:Label id="Label1" text="This is button "/>
</mx:Repeater> 

在上面的代码中,假设我创建了 10 个标签,并且我只想在第 5 个标签中应用一些更改?可能吗。

谢谢

【问题讨论】:

    标签: actionscript-3 apache-flex flex4 flex3


    【解决方案1】:

    是的,这是可能的。

    您可以像这样访问中继器生成的组件:

    component_id[index]
    

    因此,在您的情况下,要更改第 5 个元素的标签,您的代码将是 Label1[4].text='blah blah'。 但是,以这种方式更改中继器生成的组件是一种不好的做法。而是使用绑定

    例如:

    //...
    [Bindable]
    var myAC:ArrayCollection = new ArrayCollection(["label1","label2","label3","label4","label5","label6"]) ;
    //...
    <mx:Repeater id="myrep" dataProvider="{myAC}"> 
       <mx:Label id="Label1" text="{myrep.currentItem}"/>
    </mx:Repeater> 
    //Changing label of 5th element
    myAC[4] = 'blah blah';
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-18
      • 1970-01-01
      • 2010-09-27
      • 2011-08-13
      • 1970-01-01
      • 2019-11-03
      相关资源
      最近更新 更多