2013-03-22 34 views
3

定義視圖我想修改視圖中格和我從基地開始(即之前,我定義我自己的看法)。但一些我甚至無法分配對象來查看屬性。 請問,任何人有任何想法如何創建視圖?我試着跟着。如何Ext.grid.panel

例將是巨大的。

var viewConfig = {emptyText: "My msg",stripeRows: false}; 

this.grid = Ext.create('Ext.grid.Panel', { 
      id: "t-"+this.gridName+"-grid", 
      header: true, 
      title: gridTitle, 
      border: false, 
      store: store,    
      columns: cm, 
      selModel: sm, 
      loadMask: true, 
      //viewConfig: viewConfig, // works fine 
      //view: new Ext.view.Table() ,//Ext.grid.View(),//Ext.grid.View(viewConfig), 
      provider: this.page.provider 
     }); 

如果我去評論「的觀點:新Ext.view.Table()」行則提高錯誤並停止一切。 我一直評論和網格創建後,我可以通過this.grid.getView()屬性訪問視圖。但如何創建自己的視圖對象(我可以分配自定義模板)?

非常感謝。

+0

您的問題是什麼?如您仍然提到的那樣自定義視圖使用viewConfig。 – 2013-03-22 11:46:28

+0

ViewConfig工作正常,但我想定義我自己的觀點。但是,如果我分解視圖:新的Ext.view.Table()它引發錯誤,me.selModel是未定義的。如何創建Ext.view.Table()的對象並賦值給「view」屬性? this.grid = Ext.create( 'Ext.grid.Panel',{ ID: 「T - 」 + this.gridName + 「 - 網格」, 標題:真, 標題:gridTitle, 邊界:假, 商店:存儲, 列:釐米, selModel:SM, loadMask:真, 視圖:新Ext.view.Table(), 提供商:this.page.provider }); – user2135671 2013-03-22 13:31:34

回答

1

從文檔:

This is the base class for both Ext.grid.View and Ext.tree.View and is not to be used directly.

如果你想自己創建一個你需要配置以下需要選項。

itemSelector : String 
store : Ext.data.Store 
tpl : String/String[] 

into the docs如何創建自定義視圖。 祝你好運!如果您需要任何幫助,請隨時詢問;)

Ext.define('Image', { 
    extend: 'Ext.data.Model', 
    fields: [ 
     { name:'src', type:'string' }, 
     { name:'caption', type:'string' } 
    ] 
}); 

Ext.create('Ext.data.Store', { 
    id:'imagesStore', 
    model: 'Image', 
    data: [ 
     { src:'http://www.sencha.com/img/20110215-feat-drawing.png', caption:'Drawing & Charts' }, 
     { src:'http://www.sencha.com/img/20110215-feat-data.png', caption:'Advanced Data' }, 
     { src:'http://www.sencha.com/img/20110215-feat-html5.png', caption:'Overhauled Theme' }, 
     { src:'http://www.sencha.com/img/20110215-feat-perf.png', caption:'Performance Tuned' } 
    ] 
}); 

var imageTpl = new Ext.XTemplate(
    '<tpl for=".">', 
     '<div style="margin-bottom: 10px;" class="thumb-wrap">', 
      '<img src="{src}" />', 
      '<br/><span>{caption}</span>', 
     '</div>', 
    '</tpl>' 
); 

var theView = Ext.create('Ext.view.View', { 
    store: Ext.data.StoreManager.lookup('imagesStore'), 
    tpl: imageTpl, 
    itemSelector: 'div.thumb-wrap', 
    emptyText: 'No images available' 
}); 

var grid = Ext.create('Ext.grid.Panel', { 
    id: "t-"+this.gridName+"-grid", 
    header: true, 
    title: gridTitle, 
    border: false, 
    store: store,    
    columns: cm, 
    selModel: sm, 
    loadMask: true, 
    view: theView, 
    provider: this.page.provider, 
    renderTo: Ext.getBody() 
}); 
//not tested but should work 
+0

首先我試圖與Ext.grid.View(),並也把店:店面,itemSelector:「tr.grid行」,太平人壽:「

{title}
」但是,即使不工作。 (store是一個變量賦值對象ofext.data.Jsonstore()),我試過tpl:new Ext.Template(「
Hello {0}.
」);但沒有任何工作。你知道互聯網上的任何鏈接提到? – user2135671 2013-03-22 15:28:31

+0

也把店:店面,itemSelector:「tr.grid行」,太平人壽:「

{title}
」但是,即使不工作。其中store是ext.data.Jsonstore()的變量賦值對象),我試過tpl:new Ext.Template(「
Hello {0}.
」);但沒有任何工作。你知道互聯網上的任何鏈接提到? – user2135671 2013-03-22 15:34:27

+0

你好,非常感謝提供的例子和鏈接, 我試過下面的例子,但不起作用。 這提高對ExtJS的下列錯誤4 API「實時預覽」 類型錯誤:無法設置屬性「視圖」的未定義請參考此鏈接http://jsfiddle.net/3hAsM/2/因爲我無法發佈。 – user2135671 2013-03-22 16:37:17

相關問題