を更新するとObservableCollection
、次のエラーが発生しました。
このタイプの CollectionView は、Dispatcher スレッドとは異なるスレッドからの SourceCollection への変更をサポートしていません。
この回答をガイドとして使用すると、次のコードが機能すると思いました。
private ObservableCollection<string> _userMessages = new ObservableCollection<string>();
public void AddUserMessage(string message)
{
lock (_locker)
{
Action action = () =>
{
this._userMessages.Add(message);
};
Application.Current.Dispatcher.Invoke(DispatcherPriority.Normal, action);
}
}
ただし、呼び出し時に UI がフリーズするようになりDispatcher.Invoke()
ました。私は間違って何をしていますか?
注: ObservableCollection
from イベントを (時々) 更新しているため、これを行う必要がありました。