[英]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.