2012-03-21 1 views
0

私は曲を再生しようとしていますが、人が私のアプリケーションに電話しています。しかし、mediaElement1.play();が使用されているのですが、これはThe calling thread cannot access this object because a different thread owns it.です。私はスレッドを使用しようとしました。しかし、問題はちょうど動く。 ベストアンサーMorten StarckWPFのスレッドの難しさ

+3

私はあなたの最初の言葉ではありませんが、質問はどこですか?質問をすることは質問をしないことです。言い直してください。 – TomTom

+0

これは(呼び出し元のスレッドは、別のスレッドがそれを所有しているためにこのオブジェクトにアクセスできません)、スレッド化が必要なわけではありませんが、すでにそれがあります。ポールによって提供された答えは、UIマジックが起こるメインのUIスレッドにmedia要素(back)をもたらします。ちょうどあなたが知っているので。 – Silvermind

答えて

2

これはトリックですか?

 if (!mediaElement1.CheckAccess()) 
      mediaElement1.Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Normal, 
       (Action)delegate 
       { 
        mediaElement1.play(); 
       }); 
関連する問題