我知道标题不是很清楚,我会尽力更好地解释自己。如何从Silverlight中的“外部”.cs文件导航
我已经在我的MainPage.xaml列表框中,我想以某种方式填充。在这个目的,我有没有一个XAML文件Home.cs连接,它的构造是这样的:
public Home(string sid, ListBox lb){...}
在此构造我做Web客户端几个POST请求,并在UploadStringCompleted方法,我创建的几个要素,堆叠面板,文本块和超链接按钮。
StackPanel bigPanel = new StackPanel();
bigPanel.Width = 456;
HyperlinkButton hyperlink = new HyperlinkButton();
hyperlink.Content = friend.name + " " + person.surname;
hyperlink.Click += new RoutedEventHandler(hyperlink_Click);
bigPanel.Children.Add(hyperlink);
lb.Items.Add(bigPanel);
问题出在这里。我想要这个超链接导航到另一个页面(FriendPage.xaml),但我无法实现它,因为如果我尝试添加NavigationService.Navigate(new Uri(“/ FriendPage.xaml”,Urikind.Relative)),那么它失败时,它会显示“非静态方法Navigate需要对象引用”。
据我所知,这个代码行应该在MainPage.xaml,所以,有没有办法做到这一点?或者在MainPage.xaml.cs中放置hyperlink.Click事件处理程序,并将其绑定到一个不存在的超链接按钮?
谢谢
耶!实际上,NavigationService.GetNavigationService(this)不起作用,但是this.NavigationService确实让你的答案成为答案 –