Thank you for the replies, the help is appreciated. I probably confused the issue by not explaining the question well enough.
Ilan gets closest, as I understand it his solution allows me to call a PublicSub on MainPage where I can alter the visibility of some controls and text in labels before retuning and then calling main page itself. I will experiment with that approach.
My confusion probably comes from not really understanding what I am doing when switching pages using :-
B4XPages.ShowPage ("Page2") to call Page2
and
B4XPages.ShowPage ("MainPage") to return to MainPage
logging shows that it never seems to return to the sub on MainPage that called Page2 yet it does end up back on MainPage and seems to run the code on MainPage.