Ответы пользователя по тегу XAML
  • Почему не запускается проект на .NET MAUI C#?

    phoenixbk
    @phoenixbk
    Потому что в штатном примере на событие клика изменяется содержимое кнопки на количество кликов по ней. В файле MainPage.xaml.cs есть метод OnCounterClicked. Он вызывается при нажатии на кнопку с названием CounterBtn. И при нажатии на кнопку при помощи свойства CounterBtn.Text меняется содержимое кнопки. А так как вы удалили эту кнопку, то ссылка по имени кнопки ссылается на несуществующий объект. Из-за этого компилятор выдаёт ошибку и не может собрать приложение. Удалите/закомментируйте этот метод целиком или только его тело и приложение запустится.
    Ответ написан
    Комментировать
  • Как создать фильтрацию в привязанной коллекции в WPF?

    phoenixbk
    @phoenixbk
    Есть ещё вариант использовать CollectionViewSource:
    CollectionViewSource _viewSource = new CollectionViewSource();
    _viewSource.Source = _items;
    _viewSource.Filter += (s, e) =>
                  {
                      SomeItem item = e.Item as SomeItem;
                      bool accepted;
                      //проверяем наши условия. true - объект отобразится, false - не отобразится
                      e.Accepted = accepted;
                  };

    Чтобы обновить список элементов используем:
    _viewSource.View.Refresh();
    После этого для каждого элемента из _items вызовется событие Filter.
    Соответственно в ComboBox.ItemsSource биндим _viewSource.View. Таким образом в ComboBox не придется каждый раз вручную вставлять новую коллекцию.
    Ответ написан
    Комментировать