SPGridView фильтрация без объектного источника данных

Я создал SPGridView динамически (в коде для sharepoint), все работает нормально, разбивает на страницы, сортирует и т.д.... но я хочу сделать фильтрацию без использования ObjectDataSource (я сделал это с ObjectDataSource, назначив ID источника данных объекта для

Grid.DataSourceID = objectDatasourceID;

и filterig работает, но когда я редактирую строку, то при обновлении она не работает), поэтому я удалил ObjectDataSource и получил данные таблицы из БД и передал Grid.DataSource = DataTable; и Grid.DataBind(); и это работает нормально, но когда я пишу код для фильтрации, как

    SPgv.AllowFiltering = true;
    SPgv.FilterDataFields = "CODE_NAME";
    SPgv.FilteredDataSourcePropertyName = "FilterExpression";
    SPgv.FilteredDataSourcePropertyFormat = "{1} = '{0}'";

(SPgv - это SPGridView, а CODE_NAME - это имя столбца)

и когда я запускаю этот код, появляется меню с именем столбца, а также работает сортировка asc и desc, но при открытии меню возникает ошибка javascript, и значения в столбце CODE_NAME не отображаются, а загружается.. но ничего не появляется

Любая помощь в отношении фильтрации без ObjectDataSource будет принята с благодарностью, я не хочу никакого текстового поля, раскрывающегося списка для фильтрации Я хочу то же самое меню (которое отображается в SPGridView) для фильтрации, но без ObjectDataSource.

1 ответ

Как вы знаете, фильтрация SPGridView лучше всего работает с ObjectDataSource. Я предлагаю добавить выпадающий элемент управления и передать выбранное значение в ваш CAML-запрос для фильтрации.

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