首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DropDownList Flex4.5不工作

DropDownList Flex4.5不工作
EN

Stack Overflow用户
提问于 2011-09-21 02:32:38
回答 1查看 669关注 0票数 0

我看过其他一些关于这个问题的帖子,但从来没有人指出是什么导致了这个问题,以及解决方案是什么。

我有一个loginview,我有一个数据模型和表示模型,它们是由parsley注入的。

下拉列表突然停止了“工作”。该列表被绑定到DM中的一些数据。你可以点击列表,但是下拉列表永远不会发生,我也不会得到任何错误。它就是不会出现。

这个应用程序是一个AIR应用程序,LoginView在主窗口中,如果这有什么不同的话。

代码语言:javascript
复制
<?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>
EN

回答 1

Stack Overflow用户

发布于 2011-09-21 03:01:34

它可以在不使用注入的情况下工作吗?

我不知道这是否相关,但我们在之前的版本中解决了类似的问题,做了类似的事情:

combobox.dataProvider = Model.getInstance().data;combobox.dropdown.dataProvider = Model.getInstance().data;

这是SDK 3.5中Combobox的一个变通方法,但它可能是一个类似的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7489988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档