我已经动态创建了 SPGridView(在 sharepoint 的代码隐藏中),一切工作正常分页、排序等......但我想在不使用 ObjectDataSource 的情况下进行过滤(我通过将对象数据源的 ID 分配给 ObjectDataSource 来完成它
Grid.DataSourceID = objectDatasourceID;
并且 filterig 有效,但是当我编辑该行时,在更新它时它不起作用)所以我删除了 ObjectDataSource 并从 DB 获取表的数据并分配给 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 也可以工作,但是当我单击菜单并且 CODE_NAME 列中的值没有出现时,它给了我一个 javascript 错误,它说正在加载.. . 但什么也没有出现
任何关于没有 ObjectDataSource 的过滤的帮助将不胜感激,我不需要任何文本框,用于过滤的下拉列表我想要相同的菜单(出现在 SPGridView 中)用于过滤但没有 ObjectDataSource。