Click here to Skip to main content
15,895,709 members
Articles / Web Development / ASP.NET

GridThemes

Rate me:
Please Sign up or sign in to vote.
4.92/5 (51 votes)
4 Mar 2007CPOL10 min read 168.7K   1.5K   161  
Combining a BuildProvider and IExtenderProvider to create a declarative framework for conditional formatting in ASP.NET GridViews.
<%@ Page Language="C#" MasterPageFile="~/SampleGridThemes.master"%>

<%@ Register Assembly="GridThemes" Namespace="UNLV.IAP.GridThemes" TagPrefix="cc1" %>

<asp:Content ID="Content1" runat="server" ContentPlaceHolderID="ContentPlaceHolder1">
    <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="CreateDataSource"
        TypeName="DataProvider">
        <SelectParameters>
            <asp:Parameter DefaultValue="5" Name="numValueColumns" Type="Int32" />
        </SelectParameters>
    </asp:ObjectDataSource>
    <asp:GridView ID="GridView1" runat="server" DataSourceID="ObjectDataSource1" BorderColor="Silver" BorderStyle="Solid" BorderWidth="1px" CellPadding="4" GridLines="None">
    </asp:GridView>
    <br />
    The tags &lt;DataRow&gt;, &lt;Header&gt;, and &lt;Footer&gt; are used to specify
    that formatting should be applied based on a specific row type.&nbsp; In this example,
    header cells and datarow cells are formatted differently.<br />
    <pre>
&lt;theme id="RowTypes1" title="Sample: RowTypes"&gt;
  &lt;Header&gt;
    &lt;apply backColor="DarkBlue" foreColor="White" 
           horizontalAlign="center" 
           font-bold="true" font-italic="true" 
           /&gt;
  &lt;/Header&gt;

  &lt;DataRow&gt;
    &lt;apply backColor="#EFEFEF" foreColor="DarkBlue" /&gt;
  &lt;/DataRow&gt;
&lt;/theme&gt;     </pre>
    
    <br />
    <br />
    <cc1:gridthemesextender id="GridThemesExtender1" runat="server">
        <Props>
            <cc1:ExtenderProperties GridID="GridView1" GridTheme="Sample: RowTypes" />
        </Props>
    </cc1:gridthemesextender>
    
</asp:Content>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
University of Nevada, Las Vegas
United States United States
With a background in education, music, application development, institutional research, data governance, and business intelligence, I work for the University of Nevada, Las Vegas helping to derive useful information from institutional data. It's an old picture, but one of my favorites.

Comments and Discussions