2013-07-10 5 views
1

좋아, 나는 wp7 응용 프로그램에서 다음과 같습니다. Microsoft.Bcl과 Microsoft.Bcl.Async를 사용하고 있습니다.NavigationService가 탐색하지 않고 비동기 관련이 있습니까?

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에 중단 점을 넣었고 거기에도 도달하지 않습니다.

이동에 방해가되는 이유는 무엇입니까?

편집 : 문제는 내가 Dispatcher.BeginInvoke에서 탐색을 넣어 지금은 작동

를 해결했다.

this.Dispatcher.BeginInvoke(() => 
{ 
    NavigationService.Navigate(new Uri("/MainPage.xaml", UriKind.Relative)); 
}); 

답변

1

이 방법에서 탐색 논리를 추출해보십시오.

+0

귀하의 의견은 나에게 전구 사용 시간을주었습니다 :-) – Gaz83