Ich habe einen AjaxPagingNavigator. Grundsätzlich unter einer bestimmten Bedingung, die Liste, die die AjaxPagingNavigator Seiten neu geladen wird. Wenn das passiert, möchte ich nur den Navigator rendern, wenn die Liste mehr als 1 Seite enthält.
So weiß jemand, wo ich einen Handler anhängen kann, damit ich in meinem AjaxPagingNavigator nach einer Sichtbarkeitsbedingung suchen und die Sichtbarkeit aktivieren / deaktivieren kann, wenn der Navigator über aktualisiert wird. Ajax ist es entweder sichtbar oder nicht?
Auszeichnung:
%Vor%Also habe ich ein Ajax-Ereignis, das "mainWrap" aktualisiert, das den "Navigator" zusammen mit der "Liste" und den Wrappings aktualisiert.
Dies ist das Ereignis, das die ganze Sache auslöst.
%Vor%Edit: Ich weiß, dass ich schreiben kann
%Vor%nach dem Erstellen des Navigators und nach dem Aktualisieren des Modells, aber ich hoffte, das in einer Unterklasse von AjaxPagingNavigator einzukapseln.
Seien Sie vorsichtig mit teuren Berechnungen in einer überschriebenen isVisible
-Methode, da Wicket isVisible
mehrmals pro Anforderung aufruft - und zählt dabei keine Anrufe, die Sie versehentlich ausführen könnten.
Normalerweise besteht die beste Möglichkeit darin, onConfigure
zu überschreiben und das Sichtbarkeits-Flag manuell zu setzen.
onConfigure
wird nur einmal während der Anforderungsverarbeitung aufgerufen und für alle Komponenten aufgerufen, einschließlich derjenigen, die nicht sichtbar sind (während onBeforeRender
nur für sichtbare Komponenten aufgerufen wird).