2012-09-15 2 views
3

Im Win8 메트로 스타일 응용 프로그램을 빌드하려고합니다. 미디어 요소의 웹에있는 원격 비디오를 재생하려고하는 임자.WinRT C# Metro Play MediaElement 비동기

 MediaElement media = new MediaElement(); 
     Uri url = new Uri("some url on web"); 
     media.Source = url; 
     media.Play(); 

첫 번째 스트리밍에는 시간이 걸립니다. 재생을 시작하려면 비디오에 시간이 걸리는 반면 응용 프로그램은 잠겨 있습니다. 나는 그것을 비현실적으로 연주하고 싶다. 나는 어떻게 이것을 달성 할 수 있는가?

+0

약속의 개념 찾기 http://msdn.microsoft.com/en-us/library/windows/apps/br211867.aspx – TommyBs

+0

도움을 주셔서 감사 합니다만, 거기에 C# equvalient of this –

답변

3

일부 검색 후에 dispatcher 요소를 사용하면 작업을 비동기 적으로 수행 할 수 있습니다. 다음은 샘플입니다.

await this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal,() => 
     { 
      MediaElement media = new MediaElement(); 
      Uri url = new Uri("some url on web"); 
      media.Source = url; 
      media.Play(); 
     } 

     ); 

이 코드 블록을 작동 시키려면 호출 기능을 async로 표시해야합니다.

관련 문제