Как применять фильтр Or And в gridview devexpress?

163
06 апреля 2018, 15:45

Есть gridView (devexpress) сетка отображения данных из коллекции. В нем есть своя встроенная панель поиска где вводится текст, и по этому тексту данные в gridView фильтруются.

Когда мы пишем одно слово (например: test) программа находит все подходящие данные. Но когда пишу два слова ( например: test Timur) он находит все данные где есть слово test и отдельно все данные где есть слово Timur.

Когда я пишу "test Timur" хочу чтобы программа нашла данные только где есть и test и Timur. Как это сделать?

Answer 1

Чтобы искать по точному вхождению строки нужно вводить ее в поле поиска вместе с кавычками:

"test Timur"

Чтобы автоматически искать по точному вхождению в поддержке DevExpress (GridView - Find panel filter - How to search by full text) рекомендуют обрабатывать событие GridView.ColumnFilterChanged и добавлять кавычки:

 private void gridView1_ColumnFilterChanged(object sender, EventArgs e)
 {
      var filterText = gridView1.FindFilterText;
      if (!string.IsNullOrEmpty(filterText) && !filterText.Contains('"'))
           gridView1.FindFilterText = "\"" + filterText + "\"";
 }

Чтобы изменить логику поиска без добавления кавычек нужно создать свой класс, унаследованный от GridView и переопределить алгоритм преобразования фильтра. Изучите ссылки в поддержке DevExpress:

  • Пример реализации: XtraGrid - How to automatically put search text in quotation marks in Filter Panel.
  • Ответ на форуме со ссылками на похожие вопросы: GridView - How to search the full Find Panel's entry text
READ ALSO
Task<TResult>. Ошибка инициализации

Task<TResult>. Ошибка инициализации

Ошибка 1 Наиболее подходящий перегруженный метод для SystemThreading

189
Горячие клавиши в WPF

Горячие клавиши в WPF

Вот коды к игре пятнашки, нужно чтобы при нажатии ctrl + z происходил откат перемещения до самого первого, но как это сделать средствами wpf не знаю...

260
Доступ к камере из различных мест приложения

Доступ к камере из различных мест приложения

Сообщение о разрешении доступа к камере и микрофону сейчас появляется при запуске приложенияСообщения были подключены при помощи возможности...

226
Глобальный метод в WPF

Глобальный метод в WPF

Как мне инициализировать глобальный метод в приложении WPFНаподобие program

168