Comment puis-je rester ExtJS colonne de grille de données masquer/montrer/déplacement/redimensionnement?
Je voudrais faire des changements à un ExtJS de datagrid d'affichage de la colonne (masquer, afficher, déplacer, redimensionner) persistante et stockées sur le serveur. Il y a beaucoup d'événements à écouter, mais l'enregistrement des gestionnaires sur la grille elle-même ne semble pas entraîner d'alertes disant:
grid.on('hide', function(event)
{
alert('Save column order: column hidden.');
});
grid.on('move', function(event)
{
alert('Save column order: column moved.');
});
grid.on('resize', function(event)
{
alert('Save column sizes: column resized.');
});
grid.on('show', function(event)
{
alert('Save colum order: column shown.');
});
(Mon approche de base peut ou peut ne pas être optimal.)
Concrètement ce que je dois faire pour être à l'écoute sur ces événements? Je peux masquer, afficher, déplacer et redimensionner les colonnes sans le déclenchement d'une alerte.
Cela a fonctionné avec un GridPanel, mais un EditorGridPanel est en difficulté. Des suggestions pour un stateful EditorGridPanel?
Jamais l'esprit la dernière question, j'avais besoin de définir stateId et puis tout a été heureux.
Jamais l'esprit la dernière question, j'avais besoin de définir stateId et puis tout a été heureux.
OriginalL'auteur JonathanHayward | 2011-04-05
Vous devez vous connecter pour publier un commentaire.
Première, vous devez configurer un fournisseur d'état de.
CookieProvider c'est la seule qui est intégré avec ExtJS
Deuxième, marque
yourGridPanel.stateful
commetrue
Troisième, regardez si vous avez besoin de changer la valeur par défaut pour GridPanel.stateEvents
C'est en gros "Un tableau des événements qui, une fois déclenché, ce qui devrait déclencher cette composante de sauvegarder son état"
Quatrième, HttpStateProvider ne vient pas construit en avec ExtJS mais Saki a un ux (user extension) pour qu'il.
Cinquième, si vous souhaitez enregistrer les états de plusieurs composants, ils doivent avoir
id
oustateId
explicitement définie.Une bonne approche serait de le faire fonctionner comme prévu avec le construit en CookieProvider et ensuite passer à Http Fournisseur.
EST-il possible de stocker l'état de toutes les lignes de la grille?
La grille de l'état est concerné avec la grille de configuration. Pas avec le magasin de données que vous pouvez voir dans les lignes. vous aurez besoin de gérer l'épargne de lignes à l'arrière-plan et les récupérer à l'aide des paramètres de votre serveur d'appel à partir de la boutique.
OriginalL'auteur Amol Katdare
La grille doit avoir une propriété appelée "dynamique". Cette définie sur True et que la grille ne devrait pas oublier les largeurs de colonne, etc.
OriginalL'auteur DWRoelands
Configurer la grille avec
stateful: true
et définir sastateId
(en option si votre réseau a un ID qui ne change pas). Aussi initialiser le Poste.état.Gestionnaire:Bien que non inclus dans le Poste 3, vous pouvez trouver en ligne un fournisseur d'état qui utilise HTML5
localStorage
plutôt que des cookies.OriginalL'auteur jd.