[英]Flex/AIR: DropDownList doesn't always open on click
我有一個帶有2-3個DropDownLists和其他控件的AIR應用程序。 DropDownList綁定到中央Model單例中的數據提供者(ArrayCollections)。 在啟動時,它們都工作正常。
但是,當我單擊按鈕將新對象添加到同一模型中另一個ArrayCollection中的對象時,DropDownLists變得很奇怪。 他們仍然會記錄點擊,所有其他控件仍會像以前一樣工作,但是下拉列表將無法打開。 單擊/等待足夠多通常會打開下拉列表,但是如果我不做其他選擇,則關閉后仍然不會打開。 進行其他選擇將使DropDownList再次起作用,但是其他選擇可能仍然拒絕打開。
如果我使用Ctrl +向下箭頭打開下拉列表,則下拉列表將一直運行,因此僅單擊不能正確觸發打開。 我可以通過在單擊時在下拉列表上調用openDropDown()
來解決此問題,但是感覺不對。
我使用的是4.1 SDK,下拉列表為s:DropDownLists。 我嘗試使用mx:ComboBoxes代替,但行為相同。 編輯:奇怪的是,使用s:ComboBoxes可以正常工作,但我真的不希望使用它們,因為它們似乎無法變為不可編輯的。
之前有人遇到過並設法解決嗎? 歡迎任何建議。
經過大量的修改后,似乎出現問題了,當我有一個ToggleButtonBar時,它具有基於視圖所具有的表示模型中的屬性來設置其enabled
屬性。 其他控件句柄
enabled="{model.certainObject != null}"
很好,但不是ToggleButtonBar。 它設置了應有的屬性,但似乎以某種方式導致了我一直遇到的下拉問題。 猜猜我不會使用ToggleButtonBar ... = /
首先要檢查:您在模型單例中是否將ArrayCollections標記為Bindable? 您的ArrayCollection是否綁定到Model Singleton中的值?
束縛是一種奇怪的野獸。 並且如果要在單個對象中放置很多Bindable屬性; 我知道改變一個屬性會觸發所有可綁定屬性的機會。 如果yu有很多不同的視圖都綁定到同一Singleton對象,則可以在應用程序中波動。
要檢查的另一件事:如果您對多個ComboBox使用與dataProvider相同的Collection,那么我會看到非常奇怪的結果。 (我假設如果使用多個DropDownLists,同樣的奇怪行為將持續存在)
但是,我只是在這里猜測。 您的代碼中最有可能出現了問題。 您可以提供一個可運行的示例來演示您的問題嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.