У меня есть стандартный Listbox, который связан со свойством в моей ViewModelWpf Prism управление обновлением событий
<ListBox ItemsSource="{Binding StatusList, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Name="myListBox" BorderThickness="0" HorizontalAlignment="Stretch">
</ListBox>
Свойства
private ObservableCollection<String> _statusList;
public ObservableCollection<String> StatusList
{
get { return _statusList;}
set { _statusList = value;}
}
Вид модель подписывается на событие
_eventAggregator.GetEvent<PublishStatusEvent>().Subscribe(this.OnStatusChanged);
, который исключает функцию, которая просто добавляет строки в коллекцию
private void OnStatusChanged(string status)
{
StatusList.Add(status);
}
Когда я выполняю длинную задачу, которая публикует события, я хочу, чтобы список обновлялся. Если я отлаживаю, я могу видеть события, но список не обновляется, пока задача не будет завершена. Задача инициализируется в viewmodel.
Кто-нибудь?
Является ли «длительная работа» отдельной веткой? – Phil
Я не уверен, вы можете попробовать '_statusList.Add (status)' –
Разница в кистях, такая же проблема – klashagelqvist