Hi Mark,
Thank you for your interest in Syncfusion Products.
Why do all the tables in the dataset that the table (that the grid binds to) need to be saved in the view state by the grid? Grid Grouping Control provides built-in support for data caching. The need for querying the datasource for every postback and callback roundtrip is eliminated, thus enhancing grid performance and minimizing load time. In order to persist the changes to the state of a GridGroupingControl across postbacks, the ViewState is maintained and the datasource object will be serialized and added to view state.
Regarding the exception with GridGroupingcontrol issue, please refer the online sample below which illustrates expression fields in columns.
http://samples.syncfusion.com/ASPNET/7.1.0.30/Web/grid.grouping.web/samples/3.5/ColumnOrRows/UnboundColumns/CS/ExpressionFields.aspxPlease have a look at the above sample and if still the issue exists, could you please try reproducing it in a simple sample and send us the sample so that we could sort out the cause of the issue and provide you a solution?
Please let me know if you have any other concerns.
Thanks,
Rekha