我是RIA,Flex的新手。 目前我使用的是Flex 3. 我的工作有些困難。 我有三個列表和一個按鈕。 視達於前兩個列表中選定的項目,點擊按鈕後,我要在DISPLY任何list.can細節項目的任何一個可以幫助我 在此先感謝flex3中的列表控件
在第一個列表中IAM顯示員工 的名字第二個列表顯示經理名稱 然後,如果我選擇一個員工姓名和一個經理人姓名,然後單擊按鈕後,相應的員工和經理的細節應該排除在第三個列表中。 這是我的工作 目前iam無法發佈我的代碼 問題是初始化細節列表並動態更改它。
我是RIA,Flex的新手。 目前我使用的是Flex 3. 我的工作有些困難。 我有三個列表和一個按鈕。 視達於前兩個列表中選定的項目,點擊按鈕後,我要在DISPLY任何list.can細節項目的任何一個可以幫助我 在此先感謝flex3中的列表控件
在第一個列表中IAM顯示員工 的名字第二個列表顯示經理名稱 然後,如果我選擇一個員工姓名和一個經理人姓名,然後單擊按鈕後,相應的員工和經理的細節應該排除在第三個列表中。 這是我的工作 目前iam無法發佈我的代碼 問題是初始化細節列表並動態更改它。
這聽起來像你的第三個「列表」根本不會成爲一個列表,它將成爲某種數據網格,或者是每個員工和經理共享的公共數據的鍵/值對形式。
假設您的員工和經理名單是從數據庫填充的,並且您獲得的數據比每個數據對象的名稱更多。你需要做的是添加一個事件監聽器,它監聽前兩個列表中的每個列表中的更改事件。然後你有一個事件處理程序來處理結果。以下只是串接所有的數據從每個selectedItem
(我們想象的列表1和列表2),並把它變成一個ArrayCollection
,然後將其指定爲數據提供程序爲DataGrid
名爲DG:
private function changeHandler(event:DataGridEvent) : void {
var list1Item:Object = list1.selectedItem;
var list2Item:Object = list2.selectedItem;
var ac:ArrayCollection = new ArrayCollection();
for (prop in list1Item) {
ac.addItem({prop:list1Item[prop]});
}
for (prop in list2Item) {
ac.addItem({prop:list2Item[prop]});
}
dg.dataProvider = ac;
}
這顯然是不你如何去做這件事,但它是一個例子。更有可能的是,您將擁有某些有興趣展示的屬性,這些屬性將被添加到dg
dataProvider中。
這是一樣有幫助,因爲我可以說一般,在沒有具體的描述和要求。
你可否再詳述一下。你想在第三個列表中顯示什麼細節?你的數據提供者怎麼組織的?發佈代碼。 – Amarghosh 2010-05-04 08:25:18
plese再次編輯我的問題 – Madhu 2010-05-04 08:48:52