2011-06-12 78 views
0

我是新來的Flex,並試圖修改一些現有的代碼。我正在嘗試使用它和AdvancedDataGrid。在click事件中,ListEvent被傳入,並且代碼可以訪問諸如event.itemRenderer.data.feature之類的屬性。訪問AdvancedDataGrid運行時的屬性與設計時間

我想檢查用戶是否點擊了父(組)記錄或子記錄;在運行時,我可以看到我想訪問的屬性是event.itemRenderer.listData.hasChildren。但是,itemRenderer的listData屬性不會在intellisense中顯示出來,並且當我在設計時嘗試訪問該項目時,由於錯誤「訪問可能未定義的屬性listData」而導致項目無法生成。但是,property.data.feature在設計時並沒有在intellisense中顯示,而且構建和運行得很好。

當我構建項目時,我需要做什麼來訪問event.itemRenderer.listData而不會引發錯誤?我是否需要捕獲不同的事件,或者將事件對象或其中一個屬性轉換爲另一個對象,該對象具有我在運行時需要的屬性(我已經調查過這些選項,但找不到有關如何執行此操作的信息)。

非常感謝任何見解。

+0

難道我不記得在事件中有不同級別的「目標」屬性嗎? – dkretz 2011-06-12 18:57:23

回答

1

您可能必須使用IDropInListItemRendererAdvancedDataGridListData執行演職員表。就像這樣:

((event.itemRenderer as IDropInListItemRenderer).listData as AdvancedDataGridListData).hasChildren 
+0

謝謝,但這只是拋出更多的'訪問未定義的屬性'的錯誤。 – Meg 2011-06-16 17:51:41

+0

好吧,有什麼不對勁。將該行分解爲多個語句;並找出哪個片段正在拋出「未定義屬性錯誤的訪問」。有可能是其中一個劇組錯誤或返回null。 – JeffryHouser 2011-06-16 18:08:40