Dans un ExtJS GridPanel, est-il un moyen de concevoir une colonne dont le seul but est d'agir en tant que colonne de numéro de série? Cette colonne n'aura pas besoin d'une propriété Edit: Le creux de ma question est: Y a-t-il un moyen de définir un numéro de rangée à l'aide du concepteur ext? p> DataUndex code>.
En ce moment, j'utilise une fonction de numérotation de rangée personnalisée, mais cela signifie que le numéro de rangée est défini dans le fichier grid.js et toutes les colonnes de grid.ui.js doivent être copiées dans Grid.js.
J'utilise le concepteur ext. P>
4 Réponses :
Tout ce dont vous avez besoin est un ext.grid.rowngrener code> dans votre définition de colonne.
var colModel = new Ext.grid.ColumnModel([
new Ext.grid.RowNumberer(),
{header: "Name", width: 80, sortable: true},
{header: "Code", width: 50, sortable: true},
{header: "Description", width: 200, sortable: true}
]);
pas une réponse, mais je veux juste partager ceci: -
sur le dessus du ci-dessous est mon exemple de travail. J'ai étendu l'original et le code ci-dessous est l'original ext.grid.rowngrener code>, vous pouvez avoir ce petit hack nifty qui incristez correctement vos numéros correctement en fonction de Le numéro de page que vous affichez si vous avez implémenté
PagingToolbar code> dans votre grille. p>
ext.grid.rowngrener code> pour éviter la confliction. P>
renduer à partir de
ext.grid.rowngrener code>, qui, à moi, assez moche car les chiffres sont fixés tout le temps quel que soit le numéro de page IT. P>
renderer : function(v, p, record, rowIndex){
if(this.rowspan){
p.cellAttr = 'rowspan="'+this.rowspan+'"';
}
return rowIndex+1;
}
EXTJS 4.2.1 Code de travail ci-dessous:
// Row numberer correct increasing Ext.override(Ext.grid.RowNumberer, { renderer: function(v, p, record, rowIndex) { if (this.rowspan) { p.cellAttr = 'rowspan="'+this.rowspan+'"'; } var st = record.store; if (st.lastOptions.page != undefined && st.lastOptions.start != undefined && st.lastOptions.limit != undefined) { var page = st.lastOptions.page - 1; var limit = st.lastOptions.limit; return limit*page + rowIndex+1; } else { return rowIndex+1; } } });
pour la version 4.2 très très facile:
Ajoutez simplement une nouvelle colonne comme celle-ci: p>