假設我有一個C#Silverlight 3應用程序和多個頁面。第一頁稱爲Home,第二頁稱爲Details。以編程方式導航到細節的唯一方法。我該怎麼做呢?!四處尋找答案,我的一切都是發現XAML URI mapper實現....C#Silverlight 3 - 以編程方式在頁面之間導航?
幫助非常感謝
假設我有一個C#Silverlight 3應用程序和多個頁面。第一頁稱爲Home,第二頁稱爲Details。以編程方式導航到細節的唯一方法。我該怎麼做呢?!四處尋找答案,我的一切都是發現XAML URI mapper實現....C#Silverlight 3 - 以編程方式在頁面之間導航?
幫助非常感謝
您是否嘗試過的NavigationService?
this.NavigationService.Navigate(new 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 =「/歡迎」;
XAML
This View great ViewModel –
This is working !!!!!! – 1myb
嘗試使用此。這對我有效。 ((System.Windows.Controls.Frame)(this.Parent)).Navigate(new 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());
我一直在尋找這個答案+3,如果我可以 – MJ33
Silverlight的哪個版本? – BigBlondeViking
Silverlight 3 ........... – Goober