0

我有一种情况,我正在使用数据网格(灵活),当我选择行时,我想启用/禁用网格下方的窗格。如果我选择了 1 行,我希望它启用,如果我选择了 0 行或多于 1 行,我希望它禁用。该窗格最初被禁用,并且启用在 100% 的时间里都很好。 enabled="false"只有在我选择了三行后才有效。如果我选择了两行,我可以证明我将其设置为 false,但它不需要。

我试过invalidateDisplayList了,触发一个事件来设置enabled="false"第二次。似乎没有任何效果。

如果这有什么不同,我正在一个模块中工作。如果我设置AlertInfoPanel.enabled=false,它并不总是有效。

<mx:VBox>
<flexi:myGrid />
</mx:VBox>

<mx:VBox id="AlertInfoPanel" height="70%" width="100%" visible="{mAllowConfig}"  includeInLayout="{mAllowConfig}" enabled="false" >
     <mx:TabNavigator width="100%" height="100%" paddingTop="0" tabHeight="20" id="TAB_NAVIGATOR" >
                        <components:Tab1 label="{getToken('token_tab_general')}" id="generalInfoUI"/>
                        <components:Tab2 label="{getToken('token_tab_rules')}" />
     </mx:TabNavigator>
</mx:VBox>
4

2 回答 2

2

我终于弄明白了。我需要打电话AlertInfoPanel.validateNow()

我不明白为什么它有时会起作用,但是validateNow()VBOX 上的似乎起作用了。

于 2012-10-26T16:55:19.757 回答
0

试试这个

<mx:VBox id="AlertInfoPanel" height="70%" width="100%" visible="{mAllowConfig}" 
   includeInLayout="{mAllowConfig}" enabled="{myGrid.selectedItems.length==1}" />
于 2012-10-26T04:49:55.987 回答