Building a VS2008 Styled Grid with the GridView Control
I received some positive feedback from my most recent post describing how to create a VS 2008 styled datagrid by using ASP.NET's ListView and DataPager controls. A few people left comments, but I also received a handful of emails asking how to achieve this same look using the GridView. So while this VS style skin was still fresh in my mind I thought I would write up a quick post on it.
Live Demo (IE6, IE7, FF and Opera) | Download
Sorting
To apply the custom sorting icon to the datagrid's header, I used the GridView's RowDataBound event to apply a custom CSS class to the header cell. I then use the background image style to apply the sorting icon to the right of the header text.
Border
Just like in my previous post, I use a series of DIV's to define the datatables frame. I then use CSS to apply background images to these DIVs. Put it all together and you get a sweet looking border.
Pager Style and Settings
The GridView control allows you to customize how the pager controls look by using the PagerSettings element (if you require even more customization you can use the PagerTemplate). It supports a handful of modes and provides other attributes that can be used to change the appearance of the pager row. Here is a table that describes the supported modes of the PagerSettings
Unfortunately, there isn't a NextPreviousFirstLastNumeric mode, because that is actually the one I would use. However, the NumericFirstLast mode is pretty close so that is what I used to configure my grid.

Put it All Together
And here is the markup for my GridView.
That's it. Enjoy!
Comments
Your blog is fantastic !
You explain with lots of details.
Great blog !!
Posted by: Duarte Pinto | April 7, 2008 05:29 AM
looks very stylish, thanks matt..
Posted by: Gokhan Demir | April 7, 2008 01:45 PM
Excellent, thank you.
Posted by: Anonymous | April 8, 2008 02:47 PM
Thank you for example.
You have a sample for menu using this same theme?
Thank you again
Posted by: Paulo Henrique | April 15, 2008 09:40 PM
@Matt
thanks for the post but i do have small problem and i'm using custom collections and i get this error when i do sorting:
"
the data source does not support sorting with IEnumerable data. Automatic sorting is only supported with Dataview, DataTable, and DataSet
"
what would i do to work sorting? in custom collections? any suggustions
thanks
Posted by: Nisar Khan | April 16, 2008 08:44 AM
thangk you~
i find it more useful
Posted by: Carl Xu | April 17, 2008 11:57 AM
Great stuff, I really dig it.
Posted by: Adron | April 29, 2008 01:16 AM
Excellent Blog!!!!
is it possible to add Keyboard Navigation funcionality to vs2008 Lisview?
Posted by: Gustavo Camps | May 14, 2008 10:42 AM
Matt,
I know its wrong to ask? Do you have black and gray version of the images?
If would really help me with my application design.
Thanks,
Chau
Posted by: Chau | May 15, 2008 04:37 PM