バックグラウンド プレゼンター スレッドから更新する必要がある UI コードがいくつかあります。バックグラウンド スレッドから、UI でプロパティを設定します。
_ui.ConnectionStatus = "A";
次に、私のセットは次のとおりです。
public string ConnectionStatus
{
set
{
if (Dispatcher.CheckAccess())
ConnectionStatusTxt.Content = value;
else
{
Dispatcher.Invoke(DispatcherPriority.Normal, (Action)(() =>
{ConnectionStatusTxt.Content = value;}));
}
}
}
次のエラーが表示されます。
The calling thread cannot access this object because a different thread owns it.
私の理解ではDispatcher
、さまざまなスレッドでの呼び出しを処理するので、このエラーは私を少し困惑させます。ありがとう!