Как я могу получить текст фильтра в событии NeedDataSource в RadGrid с пользовательской подкачки

Я использую пользовательский пейджинг в RadGrid. Работает нормально. Но фильтр не работает, как я хочу. Поэтому я подумал о написании собственного кода для фильтра. Но как я могу получить текст фильтра и столбец, для которого фильтр был применен в событии NeedDataSource.

2 ответа

Решение

Я получил ответ, но я забыл обновить здесь. Виноват...

Ответ: gridObject.MasterTableView.FilterExpression, В этом свойстве сетки все фильтры объединены в строку. эта строка содержит заголовки столбцов и фильтр, примененный через запятую ,, Вы можете разделить это и работать над этим.

Я нашел другой способ, который я обнаружил благодаря ответу ckr здесь. Вы должны сделать это для каждой интересующей вас фильтруемой колонки:

var filterValue = rgFilterPoints.MasterTableView.GetColumn("YourColumnName").CurrentFilterValue;

Другой вариант, если вы оказались в событии, у которого параметр EventArgs имеет Item (лайк GridCommandEventArgs), вы можете использовать это:

((GridTableCell)e.Item.Cells[5]).Column.CurrentFilterValue

В этом случае вам нужно использовать индекс столбца. Осторожно, в начале есть несколько "скрытых" столбцов, поэтому в этом примере я обращаюсь к 4-му столбцу в разметке.

Другие вопросы по тегам