I was wondering what the best practice is for sending variables like 'selectedItem' and so on between pages in UWP? Is it a good idea to just create a static global variable class that every Page knows of?
I'm going to sum up Microsofts Best Practice here:
For simple data (like strings):
Use the Frame.Navigate(TypeName, Object) method, where as the second argument should always be a string (even if it allows objects). The second argument can then be extracted from the NavigationEventArgs.Parameter in the Frame.Navigated event handler.
For complex data (anything besides strings):
You may choose from two options here, depending on the size and complexity of your app:
- Either manage a reference to any complex data inside your
Appclass directly - Or keep a reference to them in any kind of Manager class, that is a member of your
Appclass. (e.g.NavigationDataManager).
Well in fact if you use MVVM approach you have all necessary info in ModelView class(es). In case you do not use MVVM just use a singleton class or even a static global class.
来源:https://stackoverflow.com/questions/33237884/best-practice-for-sharing-data-between-pages