Dojox.grid.DataGrid - widget - rendert nur auf sichtbare tab
Bin ich mit einem Widget enthält ein DataGrid-Objekt. Das Widget funktioniert bestens, wenn in dem ersten tab (das ist die sichtbare tab), aber nicht, wenn ich den gleichen code auf einer zweiten Registerkarte.
Der code ist der gleiche, ich habe mehrere überprüft, um sicherzustellen, gibt es keine anderen Probleme - und nicht Grid-code-rendering fein - nur die raster, die ein problem hat. Ich habe versucht, die Einstellung der Höhe und Breite manuell und nur dieses führt zu einer großen grauen Rechteck auf der zweiten Registerkarte.
Muss ich sagen, das Grid zu aktualisieren, in irgendeiner Weise - oder ist es eine Eigenschaft für die TabContainer?
Helfen - das ist das fahren mich verrückt!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Yeah, das ist ein großes problem mit dem raster. Wenn Sie es verwenden, declaritively in einem tab-container, es wird nicht richtig dargestellt, auf den nicht sichtbaren Registerkarten. Es braucht zum berechnen der Höhe/Breite (auch wenn Sie angeben Sie)...wie Sie gesehen haben.
Den Weg, den ich gekommen, um es war, die Netze programmatisch auf die Registerkarte wählen. Ich habe geschrieben über meine Lösung auf die dojo-Foren. Mein code-Beispiel ist über github. Es ist ein bisschen zu groß, hier zu posten, dünkt mich. Lassen Sie mich wissen, wenn Sie es wollen, und ich werde mein edit beantworten.
Gibt es auch eine Diskussion über nabble mit einer anderen Lösung.
"Größe ändern" funktioniert wie ein Charme! War auf der Suche nach diesem für eine lange Zeit (wusste nicht, was ich suchen mussten), vielen Dank.
Ich diese routine benutzt, um dynamisch zu ermitteln, ob der Reiter hat mehr als ein datagrid, als vielleicht kenne ich nicht die ID von einem einzigen Netz, vielleicht könnte jemand anderes verwenden das auch:
Dieser prüft die div mit
id="container"
(überspringen Sie diesen Teil, wenn Sie möchten, durchsuchen Sie das ganze DOM) für divs mit einer id beginnend mit "gridNode_" und gelten "Größe ändern", um diese widgets.Ein alternativer Ansatz ist, um die Größe des Rasters auf der Registerkarte element-Auswahl. Beispielcode
dojo.connect(dijit.byId('my_tab_container'), "selectChild", function(Kind){