Я видел здесь оригинальный вопрос. asynchronous UI update from ViewModel in WPF Несмотря на то, что был принят ответ, автор оригинала задавал вопрос, на который я нахожусь. Все это сводится к правильному способу включения объекта Dispatcher в связанную модель View.обновление асинхронного интерфейса от ViewModel в WPF
Итак ... У меня есть вид с сеткой, привязанной к наблюдаемой коллекции в модели «Автомобили». В конструкторе модели представления я вызываю SharePoint с помощью QueryAsync. В методе успеха я должен позвонить Диспетчеру. Возможны >> Dispatcher.CurrentDispatcher.Invoke(), App.Current.Dispatcher.Invoke
Ничто из этого не работает для меня. Я не знаю, должен ли я отправить диспетчера в модель просмотра. (Я не знаю, как это сделать) или создайте диспетчер в модели просмотра и присвойте ему что-то.
Я действительно даже не думаю, что я делаю это правильно. Вы бы подумали, что там будет какой-то достойный примерный код.
Что вы имеете в виду под «ни один из них, кажется, работает для меня»? Используете ли вы Silverlight или WPF? Проверьте, помогает ли этот ответ: http://stackoverflow.com/a/4621651/667792 –
Как сказал Милош, пожалуйста, объясните, почему то, что вы пытаетесь, не работает. т.е. любое сообщение об ошибке, которое вы получаете. Также было бы полезно узнать, действительно ли это WPF или Silverlight; вы оба помечены, и они часто делают вещи несколько иначе. В любом случае, если вы выполняете 'Dispatcher.BeginInvoke (() => {<ваше действие здесь>}), он должен работать. Но я бы также сделал 'Dispatcher.CheckAccess()' first и только вызывать вызов, если проверка завершилась неудачно. Если проверка вернется, просто вызовите действие самостоятельно. – Taekahn