Puis-je utiliser une chaîne pouvant être liée pour une invite ComboBox?
-
03-07-2019 - |
Question
Ce qui suit affiche une zone de liste déroulante avec le texte "Choisir un":
** Ceci est le pseudo code *
<?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>
Toutefois, ce qui suit affiche une zone de liste déroulante avec le texte "Obj 1". (l'étiquette du premier élément):
<?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>
Pourquoi ne puis-je pas utiliser une chaîne pouvant être liée pour l'invite ???
La solution
Cela a fonctionné:
<?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>
Je ne comprends pas pourquoi je dois définir explicitement selectedIndex sur -1, mais cela fonctionne!
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow