是否可以在舞臺上創建一個DataGrid
後在閃存中更改RowCount
?如何在加載XML文件後在Flash ActionScript中重新加載DataGrid?
我在外部加載一個包含DataGrid
應具有的行數的XML文件,但問題在於,因爲此文件在運行時未加載,所以它只是選取默認的3個項目。也許我必須在舞臺上重新加載DataGrid
,或者循環直到它被定義。
有沒有人有這方面的經驗?
是否可以在舞臺上創建一個DataGrid
後在閃存中更改RowCount
?如何在加載XML文件後在Flash ActionScript中重新加載DataGrid?
我在外部加載一個包含DataGrid
應具有的行數的XML文件,但問題在於,因爲此文件在運行時未加載,所以它只是選取默認的3個項目。也許我必須在舞臺上重新加載DataGrid
,或者循環直到它被定義。
有沒有人有這方面的經驗?
我們在談論Flash還是Flex?如果我們正在談論Flex,您實際上可以使用DataBinding。只需將[Bindable]屬性放置在包含您的XML的變量上方,並且當您使用新數據更新變量時,網格也將被更新。
如果你確實是指Flash,那麼我就不知道了。
Flex項目:
使用綁定的強制更新時dataprovider中的變化。
<fx:Script>
<![CDATA[
[Bindable]
private var _loadedXMLData : XML; // load xml and store here
]]>
</fx:Script>
<mx:DataGrid dataProvider="{_loadedXMLData}" width="100%" height="100%"/>
Flash項目:
請確保XML已經被加載時設置的數據提供者。如果它不給你正確的行數量,試試這個:
// set flash datagrid component rows manually
dg.rowCount = 10;
DataGrid的繼承了[`rowCount`](http://help.adobe.com/nl_NL/FlashPlatform/reference/actionscript/2/ help List.html?content = 00002578.html#3149569)來自List組件的屬性。加載XML後,使用您想要的值設置此屬性。還要確保組件的高度足夠大,以顯示你想要的行數(你可以用`setSize()`來完成)。如果更新沒有立即發生,你可以使用`invalidate()`來強制更新。只要舞臺上的數據網格實例具有實例名稱,您應該可以通過actionscript 2來控制它 – 2014-08-01 20:08:40