protected override void OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs e) { base.OnNavigatedFrom(e); if (State.ContainsKey("itime")) { State.Remove("itime"); } State["itime"] = itime; if (State.ContainsKey("imoves")) { State.Remove("imoves"); } State["imoves"] = imoves; if (State.ContainsKey("nextPuzzleOpened")) { State.Remove("nextPuzzleOpened"); } State["nextPuzzleOpened"] = nextPuzzleOpened; if (State.ContainsKey("assembled")) { State.Remove("assembled"); } State["assembled"] = assembled; if (assembled) { if (State.ContainsKey("prevMoves")) { State.Remove("prevMoves"); } State["prevMoves"] = prevMoves; if (State.ContainsKey("prevTime")) { State.Remove("prevTime"); } State["prevTime"] = prevTime; if (State.ContainsKey("uploaded")) { State.Remove("uploaded"); } State["uploaded"] = uploaded; if (uploaded) { if (State.ContainsKey("internetBestMoves")) { State.Remove("internetBestMoves"); } State["internetBestMoves"] = internetBestMoves; if (State.ContainsKey("internetBestTime")) { State.Remove("internetBestTime"); } State["internetBestTime"] = internetBestTime; if (State.ContainsKey("internetPlace")) { State.Remove("internetPlace"); } State["internetPlace"] = internetPlace; } } gameController.tombstone(State); gameViewController.tombstone(State); }