0

我想将这三个连接在一起。当您从切换按钮栏中选择时,它将显示在组合框中,您可以从那里选择将在数据网格中显示的其他数据。

现在我连接了前两个:

private function toggle(event:ItemClickEvent):void{

                list2.selectedIndex=-1; // reset so prompt shows
                if (togglebtn.selectedIndex==0)
                list2.dataProvider=elecItems;
                else if(togglebtn.selectedIndex==1)
                list2.dataProvider=toyItems;

            }

<mx:ToggleButtonBar id="togglebtn" x="9" y="29" color="0x323232" dataProvider="{dp}" horizontalGap="4" itemClick="toggle(event)"/>

<s:ComboBox id="list2" x="159" y="28" width="549" itemClick="select_item(event)"/>

现在我想将组合框与数据网格连接起来,但是当我使用时:

if (list2.selectedIndex==0)
info_dg.dataProvider={info};

它指向两个索引....反正我自己也不太明白,希望能得到一些帮助。

除了使用 SelectedIndex==0 之外,我还可以使用 ID 代替吗?

数据结构:ToggleButtonBar

[Bindable]public var dp:ArrayCollection = new ArrayCollection([
            {label:"商品", data:399}, 
            {label:"顧客", data:599}]);

组合框

[Bindable]public var elecItems:ArrayCollection = new ArrayCollection([
                {label:"text", data:299}, 
                {label:"tttナビ", data:999}, 
                {label:"大学院ttt", data:999}, 
                {label:"ttt", data:999}, 
                {label:"ttt制作", data:899},
                {label:"tttt", data:899}]);


            [Bindable]public var toyItems:ArrayCollection = new ArrayCollection([
                {label:"text", data:120}, 
                {label:"text", data:50}, 
                {label:"text", data:50},
                {label:"(株)text", data:30} ]);

数据网格 XML 文件:

<fx:XMLList id="Info">
            <employee>
                <name>eeee/完了&lt;/name>
                <phone>eee</phone>
                <email>eee制作</email>
                <active>300,000</active>
                <image>eeee</image>
            </employee>
            <employee>
                <name>rrr/完了&lt;/name>
                <phone>rrr</phone>
                <email>rrr設営</email>
                <active>1,900,000</active>
                <image>rrrしないように</image>
            </employee>
        </fx:XMLList>
4

1 回答 1

0

我有这样的结构来保存有关员工的信息

<fx:XMLList id="info">
        <toggle>
            <group>
                <employee>
                    <name>ei1_name1</name>
                    <phone>phone1</phone>
                </employee>
                <employee>
                    <name>ei1_name2</name>
                    <phone>phone2</phone>
                </employee>
            </group>
            <group>
                <employee>
                    <name>ei2_name1</name>
                    <phone>phone1</phone>
                </employee>
                <employee>
                    <name>ei2_name2</name>
                    <phone>phone2</phone>
                </employee>
            </group>
        </toggle>

        <toggle>
            <group>
                <employee>
                    <name>ti1_name1</name>
                    <phone>phone1</phone>
                </employee>
                <employee>
                    <name>ti1_name2</name>
                    <phone>phone2</phone>
                </employee>
            </group>
            <group>
                <employee>
                    <name>ti2_name1</name>
                    <phone>phone1</phone>
                </employee>
                <employee>
                    <name>ti2_name2</name>
                    <phone>phone2</phone>
                </employee>
            </group>
        </toggle>

    </fx:XMLList>

有两个切换块可以区分“toy”和“elec”。每个块都有许多“组”项 - 每个对应于 CheckBox 中的相应项。

如果没问题,那么你不应该使用任何“if else”。取而代之的是,您的功能看起来像

        private function onCbChanged(evt:IndexChangeEvent):void
        {
            info_dg.dataProvider = info[togglebtn.selectedIndex].group[list2.selectedIndex].employee;
        }

“togglebtn.selectedIndex”选择一个切换块,“list2.selectedIndex”选择一组切换。

于 2013-01-30T11:29:58.690 回答