For grouping in gridView you need to use
Nested GridView
which will solve your problem for sure, please refer some threads:
This article presents how the GridView control can be nested:
Multilevel Nested Master/Detail Data Display Using GridView[
^]
Build a Nested GridView Control with ASP.NET[
^]
The next article, will shows how you can override Render event to create group header based on your sorting column.
Creating a Customized Sorting User Interface (C#)[
^]
You can use Edit permissions in
Grid View[
^]
GridViewHelper[
^] as the name suggests, a helper class to aid the creation of groups and summaries.
Hope it helps!