I have a webpart with SpGridView. I bind it with ObjectDataSource.
I want filtering multiple columns.
I set AllowFiltering for spgrid:
grid.AllowFiltering = true;
grid.FilterDataFields = ",Name,Region,Total Sales";
grid.FilteredDataSourcePropertyName = "FilterExpression";
grid.FilteredDataSourcePropertyFormat = "{1} = '{0}'";
and set ObjectDataSource
<asp:ObjectDataSource runat="server" ID="ds" SelectMethod="GetTable" ></asp:ObjectDataSource>
ds.ObjectCreating += new ObjectDataSourceObjectEventHandler(ds_ObjectCreating);
void ds_ObjectCreating(object sender, ObjectDataSourceEventArgs e)
{
myDataTable = new DataTableWrapper(sourceDataTable);
e.ObjectInstance = myDataTable;
}
sourceDataTable = list.GetItems(quary).GetDataTable();
myDataTable = new DataTableWrapper(sourceDataTable);
Type t = myDataTable.GetType();
ds.TypeName = t.AssemblyQualifiedName;
grid.DataSourceID = "ds";
grid.DataBind();
But when i click filter i get error
