====== 019 ページの遷移 ======
===== 概要 =====
画面の切り替えを行います。サンプルではレイアウトも記述しているためソースが長めになっていますが、必要なものはページを切り替える「NavigationService.Navigate」と、切り替え先で呼び出されるOnNavigatedToメソッドのみです。また、ページを切り替える直前で呼ばれるメソッドは OnNavigatedFromになっています。
==== MainPage.xaml ====
==== MainPage.xaml.cs ====
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
namespace BaseApp
{
// エントリーポイント
public partial class MainPage : PhoneApplicationPage
{
// コンストラクタ
public MainPage()
{
// コンポーネントの初期化。
InitializeComponent();
}
// ページ遷移開始時に呼ばれるメソッド。
protected override void OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs e)
{
System.Diagnostics.Debug.WriteLine("call OnNavigatedFrom");
}
// 「サブページへ」がクリックされた。
private void ChangePage_Click(object sender, RoutedEventArgs e)
{
this.NavigationService.Navigate(new Uri("/SubPage.xaml", UriKind.Relative));
}
}
}
==== SubPage.xaml ====
==== SubPage.xaml.cs ====
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
namespace BaseApp
{
// エントリーポイント
public partial class SubPage : PhoneApplicationPage
{
// コンストラクタ
public SubPage()
{
}
// NavigationService.Navigate後に呼ばれるメソッド。
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
System.Diagnostics.Debug.WriteLine("call OnNavigatedTo");
}
}