Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to refresh the one but last ContentPage on the Navigation

Typically, one pops the current page using this from the NavigationStack:

   Navigation.PopAsync( true );

How to I use Navigation to redraw the page just before the current page?

Background: The current page changed something that need to get re-presented in the one but last page.

like image 716
SteAp Avatar asked May 26 '16 16:05

SteAp


1 Answers

I'm assuming that the data model that you are using is not observable/bindable and thus the page is not "auto-updated"...

You could use MessagingCenter to publish a "Refresh Event" to avoid coupling the two Pages with events...

In your MainPage:

MessagingCenter.Subscribe<MainPage> (this, "RefreshMainPage", (sender) => {
    // Call your main page refresh method
});

In your Second Page:

   MessagingCenter.Send<MainPage> (this, "RefreshMainPage");
   Navigation.PopAsync( true );

https://developer.xamarin.com/guides/xamarin-forms/messaging-center/

like image 154
SushiHangover Avatar answered Oct 04 '22 20:10

SushiHangover