Windows Phoneで2つのNavigateする方法

Windows Phoneで他のページへナビゲートするには2つの方法があります。


1つ目はPageクラスのNavigationServiceのNavigateメソッドを使う方法

NavigationService.Navigate(new Uri("/Sample.xaml", UriKind.Relative));

2つ目はFrameクラスのNavigateメソッドを使う方法

var frame = Application.Current.RootVisual as PhoneApplicationFrame;
frame.Navigate(new Uri("/Sample.xaml", UriKind.Relative));


Frameの方でも内部的にはNavigationServiceのNavigateメソッドをコールしているので処理としては同じになります。
ただ使用用途として、たいていの場合はPageクラスからナビゲートすることが大半なのでPageクラスのNavigationServiceのNavigateを呼び出しますが、Pageクラス以外のところでナビゲートしたい場合は、グローバルに存在するFrameのNavigateを使えます。