Apache flex 根据某些条件启用/禁用复选框

Apache flex 根据某些条件启用/禁用复选框,apache-flex,Apache Flex,我在gridview里有一个支票箱。我需要它在某些条件下禁用,在其他条件下启用。 问题是如何从网格外获取复选框id 请帮助……通过给您的复选框一个ID,您应该能够引用它,无论它是什么容器对象 <mx:CheckBox id=myCheckbox ... /> 你能发布一些代码吗?这是MXML还是ActionScript?复选框所依赖的条件是什么?更多的上下文会很有帮助。如果复选框在渲染器中,我们能给出它的ID吗???在任何循环代码中分配ID都会打破ID的概念,因为它们应该是100

我在gridview里有一个支票箱。我需要它在某些条件下禁用,在其他条件下启用。 问题是如何从网格外获取复选框id


请帮助……

通过给您的复选框一个ID,您应该能够引用它,无论它是什么容器对象

<mx:CheckBox id=myCheckbox ... />


你能发布一些代码吗?这是MXML还是ActionScript?复选框所依赖的条件是什么?更多的上下文会很有帮助。如果复选框在渲染器中,我们能给出它的ID吗???在任何循环代码中分配ID都会打破ID的概念,因为它们应该是100%唯一的,所以将它们放在渲染器中不是一个好的计划。我误解了发生的事情,因为你说gridview我假设了一个网格,而你指的是datagrid。我认为索菲斯蒂芬克有一个不错的答案给你。如果他不工作,你真的需要发布一个代码片段,这样我们就可以看到你在做什么,你的意图是什么。
private function toggleCheckBoxEnabled():void{
    if(some condition){
      myCheckBox.enabled = true;
    }else{
      myCheckBox.enabled = false;
    }
}
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:pw="http://intelligentpathways.com.au/Flex/v2">

    <mx:ArrayCollection id="ac">
        <mx:Object name="Alpha" enabled="{true}"/>
        <mx:Object name="Bravo" enabled="{true}"/>
        <mx:Object name="Charlie" enabled="{false}"/>
        <mx:Object name="Delta" enabled="{false}"/>
        <mx:Object name="Echo" enabled="{true}"/>
    </mx:ArrayCollection>

    <mx:Panel horizontalCenter="0" verticalCenter="0" title="Renderer Demo">
        <mx:DataGrid width="500" height="300" dataProvider="{ac}">
            <mx:columns>
                <mx:DataGridColumn headerText="Name" dataField="name"/>
                <mx:DataGridColumn headerText="Enabled?" dataField="enabled"/>
                <mx:DataGridColumn headerText="Checkbox">
                    <mx:itemRenderer>
                        <mx:Component>
                            <mx:Box paddingLeft="3">
                                <mx:CheckBox label="Foxtrot" enabled="{data.enabled}"/>
                            </mx:Box>
                        </mx:Component>
                    </mx:itemRenderer>
                </mx:DataGridColumn>
            </mx:columns>
        </mx:DataGrid>
    </mx:Panel>

</mx:Application>