|
using System;
using System.Windows.Navigation;
using CPVanity.ViewModel;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Shell;
namespace CPVanity
{
public partial class MainPage : PhoneApplicationPage
{
private bool _newPageInstance;
// Constructor
public MainPage()
{
_newPageInstance = true;
InitializeComponent();
}
protected bool IsResurrectedPage
{
get
{
return _newPageInstance && State.ContainsKey("PreservingPageState");
}
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
if (IsResurrectedPage)
{
Dispatcher.BeginInvoke(() => State.RestoreState(Pivoter));
}
}
protected override void OnNavigatedFrom(NavigationEventArgs e)
{
base.OnNavigatedFrom(e);
// Set newPageInstance back to false. It will be set back to true if the constructor is called again.
_newPageInstance = false;
// Set a key in the State dictionary that will be checked for in OnNavigatedTo
State["PreservingPageState"] = true;
State.PreserveState(Pivoter);
}
private void ApplicationBarIconButton_Click(object sender, EventArgs e)
{
CPViewModel.TryExecuteCommand(DataContext, ((IApplicationBarIconButton)sender).Text);
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
The first computer program I ever wrote was in BASIC on a TRS-80 Model I and it looked something like:
10 PRINT "Don is cool"
20 GOTO 10
It only went downhill from there.
Hey look, I've got a blog