私はC#Silverlight 3アプリケーションをいくつかのページで使用しています。最初のページは「ホーム」と呼ばれ、2番目のページは「詳細」と呼ばれます。詳細にナビゲートする唯一の方法は、プログラムによって行われます。どうすればいいの?答えのためにどこでも見て、私が見つけたすべてのXAMLのURIマッパーの実装です....C#Silverlight 3 - プログラム間でページ間を移動しますか?
ヘルプを大幅に
私はC#Silverlight 3アプリケーションをいくつかのページで使用しています。最初のページは「ホーム」と呼ばれ、2番目のページは「詳細」と呼ばれます。詳細にナビゲートする唯一の方法は、プログラムによって行われます。どうすればいいの?答えのためにどこでも見て、私が見つけたすべてのXAMLのURIマッパーの実装です....C#Silverlight 3 - プログラム間でページ間を移動しますか?
ヘルプを大幅に
は、あなたがのNavigationServiceを試してみました感謝しましたか?
this.NavigationService.Navigate(新しいUri( "Details.xaml"、UriKind.Relative));
のC#:
this.navContent.Navigate(new Uri("Welcome", UriKind.Relative));
XAML:
<navigation:Frame
x:Name="navContent"
HorizontalContentAlignment="Stretch"
VerticalContentAlignment="Stretch"
Source="Welcome">
<navigation:Frame.UriMapper>
<uriMapper:UriMapper>
<uriMapper:UriMapping Uri="Welcome" MappedUri="/Views/Welcome.xaml" />
<uriMapper:UriMapping Uri="Profile" MappedUri="/Views/Profile.xaml" />
<uriMapper:UriMapping Uri="Details/{id}" MappedUri="/Views/Details.xaml?photoid={id}" />
</uriMapper:UriMapper>
</navigation:Frame.UriMapper>
</navigation:Frame>
でもあなたの "詳細" ページでは、(あなたが言ったことにもかかわらず。)マッピングされるべき
C#の App.Current.Host。 NavigationState = "/ Welcome";
XAML
これはViewModelでうまくいきます –
これは動作しています!!!!!! – 1myb
これを使用してみてください。これは私のために働いた。
((System.Windows.Controls.Frame)(this.Parent))。Navigate(新しいUri( "/ Import"、UriKind.Relative));
最善の解決策は次のとおりです。
があなたのApp.xaml.csにこのコードを追加します。
private static Grid root;
private void Application_Startup(object sender, StartupEventArgs e)
{
root = new Grid();
root.Children.Add(new MainPage());
this.RootVisual = root;
}
public static void Navigate(UserControl newPage)
{
UserControl oldPage = root.Children[0] as UserControl;
root.Children.Add(newPage);
root.Children.Remove(oldPage);
}
そして、ページ間を移動するために、あなただけ呼び出す必要があります:
App.Navigate(new OtherSamplePage());
私はこの答えをどこからでも探してきました。 – MJ33
Silverlightのどのバージョンですか? – BigBlondeViking
Silverlight 3 ........... – Goober