2016-05-13 62 views
0

我想在Smart Client中創建一個對象ListGrid組件。如何在Smart Client中創建新對象或克隆ListGrid

isc.ListGrid.create({ 
    ID: "countryList", 
    width:500, height:224, top:50, alternateRecordStyles:true, 
    fields:[ 
    {name:"countryCode", title:"Flag", width:50, type:"image", imageURLPrefix:"flags/16/", imageURLSuffix:".png"}, 
    {name:"countryName", title:"Country"}, 
    {name:"capital", title:"Capital"}, 
    {name:"continent", title:"Continent"} 
]}) ; 

現在countryList是用於ListGrid部件的ID。

讓我們假設這個網格擁有一些值,我想把其他值從數據庫中的值,並有一個條件,我們不必覆蓋或更改以前的值。所以我們需要創建一個countryList的新對象。

我們該如何做到這一點?

回答

1

我不明白你是否需要同一個ListGrid的另一個實例,或者如果你需要在同一個ListGrid中顯示不同的數據。

如果你需要另一個實例,你可以定義一個類:

isc.defineClass("MyGrid", "ListGrid"); 
isc.MyGrid.addProperties({ 
    width:500, height:224, top:50, alternateRecordStyles:true, 
    fields:[ 
    {name:"countryCode", title:"Flag", width:50, type:"image", imageURLPrefix:"flags/16/", imageURLSuffix:".png"}, 
    {name:"countryName", title:"Country"}, 
    {name:"capital", title:"Capital"}, 
    {name:"continent", title:"Continent"} 
    ] 
}); 
isc.MyGrid.create({ID: "countryList"}); 
isc.MyGrid.create({ID: "countryList2"}); 

否則,如果您需要顯示在同一ListGrid例如不同的數據,你可以這樣做:

  • countryList。使用setData(newData); //或:
  • dataSource.fetchData(criteria,「countryList.setData(data)」); //或:
  • countryList.fetchData(newCriteria); //如果countryList有一個dataSource屬性
+0

我有一個列表網格超過75個fields.Now我做了一個方法有參數是數組的List Grid(var array = ListGrid_ID.getRecord(index);)和我希望對來自數據庫的數據使用相同的方法,所以我需要將DB值保存到ListGrid的新實例中。並且我不知道如何創建新實例。 –

+0

我也嘗試了上面寫的上面的方法,但它在同一屏幕上顯示兩個列表網格。我需要兩個對象,但只能在屏幕上的列表網格上。 –