簡體   English   中英

從一個空的dataProvider開始<List>

[英]Starting with an empty dataProvider for a <List>

我使用的是List ,一開始我必須為空。 通過單擊按鈕,我可以根據需要向其中添加項目。 由於它為空,所以我沒有添加dataProvider屬性

<s:List id="thelist" itemRenderer="listIR" />

要添加項目,我將其直接添加到dataProvider

thelist.dataProvider.addItem()

但是當我這樣做時,它給了我這個錯誤

 #1009: Cannot access a property or method of a null object reference.

另外,我在listIR itemRenderer本身中有一個調試Alert ,並且我看到創建列表時,即使該列表在開始時應該為空,我也會收到兩次警報,就像創建了2個itemRenderers一樣。

任何想法此itemRenderer有什么問題嗎? 如何從一個空的dataProvider開始並向其中平滑添加項目?

List的dataProvider無效。 您必須設置IList或ICollectionView接口的空實現,例如:

<s:List id="thelist" itemRenderer="listIR" dataProvider="new ArrayCollection()"/>

由於未設置thelist.dataProvider,因此此值最初為null。 因此無法使用null.addItem()。

您應該在調試時將實例化的Array或ArrayCollection作為dataProvider看到,然后再調用addItem();。

修復1:由《 Daniel Engmann》描述

修復2:

if(!thelist.dataProvider) thelist.dataProvider = new ArrayCollection();
thelist.dataProvider.addItem();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM