Задать вопрос
Ответы пользователя по тегу WPF
  • WPF, работа с ListCollectionView в фоновом потоке - как исправить ошибку?

    @serdceder
    А вы как хотели? Конечно интерфейс будет виснуть, вы напрямую с потоком UI работаете, коллекцию фильтруете на лету. Есть несколкьо атрофированный класс BackroundWorker, но лучше синхронизацией контекста воспользуйтесь - она позволяет передавать данный из одного потока в другой с помощью событий. Почитайте материал, там очень много теории.
    Ответ написан
    Комментировать
  • WPF, работа с ListCollectionView в фоновом потоке - как исправить ошибку?

    @serdceder
    Создайте отдельный класс ViewModel, там создайте сво-во
    public ListCollectionView SearchResults
    {
    get { return _searchResults2; }
    set
    {
    _searchResults2 = value;
    RaisePropertyChanged("SearchResults");
    }
    }

    А это обработчик для команды:
    ...
    _searchResults2.Dispatcher.BeginInvoke(
    (Action)delegate
    {
    _searchResults2.Filter = new Predicate(o => ...)
    }, System.Windows.Threading.DispatcherPriority.Background);
    SearchResults = _searchResults2;

    И будет вам счастье. Учитесь работать через команды и не совмещайте логику и View.
    Ответ написан
    Комментировать