Я получаю исключение 'UnauthorizedAccesExpection - Invalid cross-thread access', когда я пытаюсь вызвать событие PropertyChanged из подписки на коллекцию IObservable, созданную с помощью Observable.Interval ().
С моим ограниченным знанием потоков я предполагаю, что интервал происходит в каком-то другом потоке, в то время как событие хочет произойти в потоке пользовательского интерфейса ??? Объяснение проблемы было бы очень полезно.
Код выглядит примерно так:
var subscriber = Observable.Interval(TimeSpan.FromSeconds(1))
.Subscribe(x =>
{
Prop = x; // setting property raises a PropertyChanged event
});
Какие-нибудь решения?
Edit:
Этот код выполняется из ViewModel, а не DependencyObject.