Drop down menu DropDownList Flex 4.5不工作
我看过其他几篇关于这方面的文章,但从未真正看到有人指出是什么原因导致了这一问题,以及解决方案可能是什么 我有一个loginview,我有一个数据模型和表示模型,由欧芹注入 下拉列表突然停止“工作”。该列表绑定到DM中的某些数据。您可以单击列表,但下拉列表从未出现,我也没有收到任何错误。它就是不出现 该应用程序是一个AIR应用程序,如果有任何区别,LoginView将显示在主窗口中Drop down menu DropDownList Flex 4.5不工作,drop-down-menu,flex4.5,Drop Down Menu,Flex4.5,我看过其他几篇关于这方面的文章,但从未真正看到有人指出是什么原因导致了这一问题,以及解决方案可能是什么 我有一个loginview,我有一个数据模型和表示模型,由欧芹注入 下拉列表突然停止“工作”。该列表绑定到DM中的某些数据。您可以单击列表,但下拉列表从未出现,我也没有收到任何错误。它就是不出现 该应用程序是一个AIR应用程序,如果有任何区别,LoginView将显示在主窗口中 <?xml version="1.0" encoding="utf-8"?> <s:Group x
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:view="com.guhsd.academicnotifier.icon.view.*"
creationComplete="onCreationComplete( event )"
alpha="0">
<fx:Script>
<![CDATA[
import spark.filters.DropShadowFilter;
import com.greensock.TweenMax;
import com.greensock.easing.Quad;
import com.guhsd.academicnotifier.events.LoginEvent;
import com.guhsd.academicnotifier.login.model.LoginDM;
import mx.binding.utils.BindingUtils;
import mx.events.FlexEvent;
[Inject]
public var pm : LoginPM;
[Inject]
[Bindable]
public var dm : LoginDM;
[Bindable]
public var fieldsValid : Boolean;
[MessageHandler(selector="isloggedin")]
public function loggedinHandler( e : Event ) : void
{
TweenMax.to( this, 1, { autoAlpha:0 } );
}
private function onCreationComplete( event : FlexEvent ) : void
{
setTimeout( checkLoginKey, 500 );
}
private function showOrHide( show : Boolean ) : void
{
var alpha_value : int;
var scaleXY : int = 1;
var newVertical : Number = 0;
if (show)
{
alpha_value = 1;
}
else
{
}
TweenMax.to( this, 0.25, { autoAlpha:alpha_value, verticalCenter:newVertical, ease:Quad.easeOut } );
}
private function checkLoginKey() : void
{
var loginEvent : LoginEvent = new LoginEvent( LoginEvent.CHECK_LOGIN_KEY );
dispatchEvent( loginEvent );
setTimeout( function() : void
{
BindingUtils.bindSetter( showOrHide, dm, "showview" );
BindingUtils.bindSetter( setDefaultSchoolSelection, dm, "lastSelectedSchool" );
}, 2000 );
}
private function setDefaultSchoolSelection( schoolName : String ) : void
{
if (schoolName != null)
{
for (var i: String in cb_schoollist.dataProvider)
{
var name : String = cb_schoollist.dataProvider.getItemAt( int( i ) ).Name;
if (schoolName == name)
cb_schoollist.selectedIndex = int( i );
}
}
}
]]>
</fx:Script>
<fx:Metadata>
[Event(name="checkLoginKey", type="com.guhsd.academicnotifier.events.LoginEvent")]
[ManagedEvents("checkLoginKey")]
</fx:Metadata>
<s:Rect top="0" bottom="0" left="0" right="0"
topRightRadiusX="50" topRightRadiusY="50">
<s:fill>
<s:LinearGradient>
<s:GradientEntry color="#667178"/>
<s:GradientEntry color="#8C9BA5"/>
</s:LinearGradient>
</s:fill>
</s:Rect>
<s:VGroup horizontalCenter="0" verticalAlign="middle" gap="0"
paddingTop="20"
paddingBottom="10" paddingLeft="50"
width="100%">
<s:HGroup verticalAlign="middle" paddingLeft="40">
<s:Label text="Academic and Disipline Referrals"
color="#FF9900" fontSize="20"/>
<mx:Spacer width="100%"/>
<s:Label color="#cb0000" text="{dm.error_message}"
width="250"/>
</s:HGroup>
<s:HGroup width="100%" paddingRight="100" paddingTop="10">
<mx:Spacer width="100%"/>
<s:Form id="form">
<s:FormItem label="Username">
<s:TextInput id="tx_username" width="200"
text="{dm.user_name}"
enter="pm.login( tx_username.text, tx_password.text, cb_schoollist.selectedItem.Name );"/>
</s:FormItem>
<s:FormItem label="Password"
requiredIndicatorSource="">
<!-- sf88fd -->
<s:TextInput id="tx_password" width="200"
text="" enter="pm.login( tx_username.text, tx_password.text, cb_schoollist.selectedItem.Name );"
displayAsPassword="true"/>
</s:FormItem>
<s:FormItem label="School">
<s:DropDownList id="cb_schoollist"
dataProvider="{dm.school_list}"
labelField="Name"
selectedIndex="0" width="100%"
close="pm.setVPList( event.currentTarget.selectedItem )"/>
</s:FormItem>
<s:FormItem>
<s:HGroup width="200">
<mx:Spacer width="100%"/>
<s:Button label="Cancel" click="pm.quit()"/>
<s:Button label="Login" click="{pm.login( tx_username.text, tx_password.text, cb_schoollist.selectedItem.Name );}"/>
</s:HGroup>
</s:FormItem>
</s:Form>
</s:HGroup>
<s:HGroup verticalAlign="middle" paddingLeft="40" paddingBottom="20">
<view:Icon/>
<s:VGroup filters="{[ new DropShadowFilter() ]}" gap="0">
<mx:Spacer height="10"/>
<s:Label text="GUHSD" color="#ffffff" fontSize="30"/>
<s:Label text="Academic Referrals" color="#ffffff" fontSize="25"/>
</s:VGroup>
</s:HGroup>
</s:VGroup>
</s:Group>
[事件(name=“checkLoginKey”,type=“com.guhsd.academicnotifier.events.LoginEvent”)]
[ManagedEvents(“checkLoginKey”)]
它在不使用注入的情况下工作吗
我不知道这是否相关,但我们在以前的版本中解决了类似的问题:
combobox.dataProvider=Model.getInstance().data;
combobox.dropdown.dataProvider=Model.getInstance().data
这是SDK 3.5中Combobox的一个解决方案,但可能是一个类似的问题。我已经解决了它,但从未真正弄清楚问题所在。该视图位于主应用程序视图中,但在creationComplete之后,我创建了一个新的spark窗口。一旦我停止将其添加到一个新的空气窗口,只需在主窗口应用程序中保留长视图,问题就消失了。