2010-10-05 5 views
2

J'essaie de basculer la hauteur d'une grille lorsque la configuration initiale a autoheight est vrai. Je veux être en mesure de basculer la hauteur lorsque la grille devient plus grande que la vue du navigateur.Ext js problème de réglage hauteur dynamique d'une grille lorsque autoHeight est déjà défini

La grille est sur une page normale sans fenêtre d'affichage ext.

Si j'essaye de régler une hauteur comme celle-ci, alors je perds la barre de défilement. Je peux voir dans firebug que le débordement est réglé sur visible plutôt que sur auto. Comment puis-je changer cela?

mygrid.autoHeight=false; 
mygrid.setHeight(200); 

Si je pars autoHeight est vrai de la configuration initiale de la grille, je n'ai aucun moyen de déterminer la hauteur dont il a besoin pour les lignes.

Est-ce que quelqu'un a peut-être une solution/solution de contournement pour ce problème?

Merci à adv, Richard

EDIT

Je pense que cela fonctionnera

var scroller = Ext.select("#grid-rekovz div.x-grid3-scroller"); 
scroller.setStyle('overflow-y','auto'); 
+0

Corrigez-moi si je me trompe, mais si vous laissez le paramètre autoHeight à true, lorsque les données sont chargées et que doLayout est appelé, la grille sera redimensionnée pour s'adapter à toutes les lignes, n'est-ce pas? C'est le cas dans tous les miens ... (même si je sais que "Ça marche pour moi" est la réponse la plus inutile jamais faite!) – ndtreviv

Répondre

0

Si vous utilisez autoHeight: true; Ensuite, vous déléguez la hauteur des problèmes de calcul au navigateur, de sorte que vous perdez le contrôle de celui-ci. Si vous utilisez autoHeight: false; alors vous pouvez changer la hauteur comme vous voulez, mais le navigateur n'ajoutera pas de barre de défilement au contenu s'il est devenu plus grand que la zone assignée.

P. Et oui, je suis necroposter =).