Che dite, l'initialize eseguito ad ogni pressione del command button, e' corretto oppure no?
Un button di solito lo metti per eseguire più volte del codice, scritto direttamente nella Sub-evento Click o richiamato da questa (meglio).
Potrebbe essere utile, in questo caso, se tu volessi creare più copie della stessa B4XPage, e quindi dello stesso form, ma allora dovresti creare in quella routine un nuovo id pagina, altrimenti non farà altro che mostrare sempre la stessa, scrivendoti un log di warning (solo avvertimento, non errore) che ti avvisa che una pagina con quell'id è già esistente nella collezione B4XPages.
Ripetere un'inizializzazione più volte, in B4X significa re-inizializzare lo stesso oggetto (il che significa anche azzerare eventuali dati contenuti in questo oggetto).
Piccola nota: per creare un nuovo id di pagina in quella routine, dovresti usare una variabile dichiarata a livello di modulo, ovvero nella Class_Globals. Ad esempio una Int, di cui incrementare il valore nel Button1_Click, potendo così creare l'id "Page" & Contatore. Ecco, questo sarebbe uno dei casi in cui le variabili statiche locali farebbero comodo, perché non avresti bisogno della variabile globale (lo scrivo perché se ne è discusso recentemente, anche se non mi pare nel forum italiano).