Control the number of alternate rows in the GridView

Nov 1, 2006

The GridView control (as well as the DataGrid) has a way of defining the style of every other row of the grid. My favorite way of doing it, is to set a class on the row and then by stylesheet set the background like so:

<asp:gridview AlternatingRowStyle-CssClass="alt" …/>

And then add this to the stylesheet.

.alt{

  background-color: #F1F1F1;

}

This approach works very well for me on both the GridView and the old DataGrid, but there is a very important thing that is missing – the ability to have e.g. three rows be alternate and three regular throughout the grid. The alternate rows are always every other row and you can’t do anything about it without overriding the GridView and provide the functionality yourself.

 

Implementation

Download the AlternateGridView.cs below and add it to the App_Code folder of your website. Then put the following tags unto the page or user control where you want the grid. The AlternateGridView class is only 47 lines of code including XML comments. You can still use the same style to color the background as shown above.

<%@ Register Namespace="CustomControls" TagPrefix="cc" %>

<cc:AlternateGridView runat="server" ID="grid" AlternateRows="3" />

Download

AlternateGridView.zip (0,56 KB)

* Only $4.95/month ASP.NET & Windows 2008 + IIS 7 Hosting! FREE SQL Included
Comments are closed

About the author

Mads Kristensen

Mads Kristensen
Program Manager at the Microsoft Web Platform team and founder of BlogEngine.NET.

More...

Month List

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer’s view in any way.