2009-03-03 34 views
0

下面显示与文字组合框“选择一”:我可以使用可绑定的字符串作为ComboBox提示吗?

**这是伪代码*

<?xml version="1.0" encoding="utf-8"?> 
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> 
    <mx:ComboBox prompt="Select One"> 
     <mx:dataProvider> 
      <mx:Array> 
       <mx:Object label="Obj 1" /> 
       <mx:Object label="Obj 2" /> 
       <mx:Object label="Obj 3" /> 
      </mx:Array> 
     </mx:dataProvider> 
    </mx:ComboBox> 
</mx:Application> 

但是,下面的显示文本“的OBJ 1”的组合框(标签第一项):

<?xml version="1.0" encoding="utf-8"?> 
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> 
    <mx:Script> 
     <![CDATA[ 
      [Bindable] 
      private var promptText:String = "Select One"; 
     ]]> 
    </mx:Script> 

    <mx:ComboBox prompt="{promptText}"> 
     <mx:dataProvider> 
      <mx:Array> 
       <mx:Object label="Obj 1" /> 
       <mx:Object label="Obj 2" /> 
       <mx:Object label="Obj 3" /> 
      </mx:Array> 
     </mx:dataProvider> 
    </mx:ComboBox> 
</mx:Application> 

为什么我不能使用Bindable字符串作为提示?

回答

0

这工作:

<?xml version="1.0" encoding="utf-8"?> 
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> 
    <mx:Script> 
     <![CDATA[ 
      [Bindable] 
      private var promptText:String = "Select One"; 
     ]]> 
    </mx:Script> 

    <mx:ComboBox selectedIndex="-1" prompt="{promptText}"> 
     <mx:dataProvider> 
      <mx:Array> 
       <mx:Object label="Obj 1" /> 
       <mx:Object label="Obj 2" /> 
       <mx:Object label="Obj 3" /> 
      </mx:Array> 
     </mx:dataProvider> 
    </mx:ComboBox> 
</mx:Application> 

我想不通为什么我要明确地将selectedIndex设置为-1,但是,它的工程!

+0

绑定比组件创建晚了一点。我猜测ComboBox默认选择第一个项目,如果你没有指定提示。所以,ComboBox被创建,它验证并选择第一个项目,然后绑定。 – joshtynjala 2009-03-04 23:49:08

相关问题