好的,我在wp7应用程序中有以下内容。我正在使用Microsoft.Bcl和Microsoft.Bcl.Async。
async void FB_Login()
{
Bool LoggedIn = false;
LoggedIn = await LoginToFB();
if(LoggedIn)
{
SaveProfile();
NavigationService.Navigate(new Uri("/MainPage.xaml", UriKind.Relative)); // Code does reach this point but does not navigate
MessageBox.Show("Navigating"); // Code does not reach here
}
}
我在if(LoggedIn)
和NavigationService.Navigate
处设置了断点,只是为了查看它是否到达那里但确实如此,但代码中的MessageBox
未显示并且放入断点没有破裂表明它没有达到那么远。我也在RootFrame_Navigating
中设置了一个断点,它也没有到达那里。
关于它为何陷入Navigate的任何想法?
编辑:问题已解决
我将导航放在Dispatcher.BeginInvoke
中,现在可以正常使用。
this.Dispatcher.BeginInvoke(() =>
{
NavigationService.Navigate(new Uri("/MainPage.xaml", UriKind.Relative));
});
答案 0 :(得分:1)
尝试从此方法中提取导航逻辑。