我正在编写一个 Windows Phone 8.1应用程序(WINRT)。我做了一个用户控件。在此用户控件中,我有一个文本块,并且在c 舔它我正在导航到FeedbackPage页面。
但问题是页面打开两次,我的意思是在BackStack中创建两个页面实例。
我的代码:
private void SendFeedback_PointerExited(object sender, PointerRoutedEventArgs e)
{
((Frame)Window.Current.Content).Navigate(typeof(FeedbackPage));
}
我打开了Main页面,然后转到包含此用户控件的AboutPage,单击用户控件中的反馈文本块,它转到feedbackpage两次。 所以 Backstack 变成: 主页>关于页面>反馈页> feedbackpage
我调试了SendFeedback_PointerExited()方法,并观察到执行了两次并且无法找到原因。
答案 0 :(得分:1)
处理点按的最佳事件是Tapped
而不是PointerExited
。 TextBlock
有此事件,因此您可以使用它。它只会被解雇一次。
答案 1 :(得分:0)
请勿使用PointerExited
事件 - 而是使用PointerPressed
事件。只要用户点击/点击文本,就会引发此问题。