DataGrid.FooterStyle Property
Gets the style properties of the footer section in the DataGrid control.
Assembly: System.Web (in System.Web.dll)
[PersistenceModeAttribute(PersistenceMode.InnerProperty)] public virtual TableItemStyle FooterStyle { get; }
Property Value
Type: System.Web.UI.WebControls.TableItemStyleA TableItemStyle object that contains the style properties of the footer section of the DataGrid control. The default value is an empty TableItemStyle object.
Use this property to provide a custom style for the footer of the DataGrid control. Common style attributes that can be adjusted include forecolor, backcolor, font, and content alignment within the cell. Providing a different style enhances the appearance of the DataGrid control.
The FooterStyle property of the DataGrid control inherits the style settings of the ControlStyle property. For example, if you specify a red font for the ControlStyle property, the FooterStyle property will also have a red font. This allows you to provide a common appearance for the control by setting a single style property. You can override the inherited style settings by setting the FooterStyle property. For example, you can specify a blue font for the FooterStyle property, overriding the red font specified in the ControlStyle property.
To specify a custom style for the footer section, place the <FooterStyle> tags between the opening and closing tags of the DataGrid control. You can then list the style attributes within the opening <FooterStyle> tag.
Note |
|---|
The ShowFooter property must be set to true for this property to be visible. |
The following code example demonstrates how to use the FooterStyle property to set the background color of the footer section.
<%@ Page Language="C#" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <script language="C#" runat="server"> ICollection CreateDataSource() { DataTable dt = new DataTable(); DataRow dr; dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32))); dt.Columns.Add(new DataColumn("StringValue", typeof(string))); dt.Columns.Add(new DataColumn("DateTimeValue", typeof(string))); dt.Columns.Add(new DataColumn("BoolValue", typeof(bool))); for (int i = 0; i < 100; i++) { dr = dt.NewRow(); dr[0] = i; dr[1] = "Item " + i.ToString(); dr[2] = DateTime.Now.ToShortDateString(); dr[3] = (i % 2 != 0) ? true : false; dt.Rows.Add(dr); } DataView dv = new DataView(dt); return dv; } void Page_Load(Object sender, EventArgs e) { if (chk1.Checked) MyDataGrid.PagerStyle.Mode = PagerMode.NumericPages; else MyDataGrid.PagerStyle.Mode = PagerMode.NextPrev; BindGrid(); } void MyDataGrid_Page(Object sender, DataGridPageChangedEventArgs e) { MyDataGrid.CurrentPageIndex = e.NewPageIndex; BindGrid(); } void BindGrid() { MyDataGrid.DataSource = CreateDataSource(); MyDataGrid.DataBind(); ShowStats(); } void ShowStats() { lblEnabled.Text = "AllowPaging is " + MyDataGrid.AllowPaging; lblCurrentIndex.Text = "CurrentPageIndex is " + MyDataGrid.CurrentPageIndex; lblPageCount.Text = "PageCount is " + MyDataGrid.PageCount; lblPageSize.Text = "PageSize is " + MyDataGrid.PageSize; } </script> <head runat="server"> <title>DataGrid Example</title> </head> <body> <h3>DataGrid Example</h3> <form id="form1" runat="server"> <asp:DataGrid id="MyDataGrid" runat="server" AllowPaging="True" PageSize="10" ShowFooter="true" OnPageIndexChanged="MyDataGrid_Page" BorderColor="black" BorderWidth="1" GridLines="Both" CellPadding="3" CellSpacing="0" Font-Names="Verdana" Font-Size="8pt"> <PagerStyle Mode="NumericPages" HorizontalAlign="Right"> </PagerStyle> <HeaderStyle BackColor="#aaaadd"> </HeaderStyle> <FooterStyle BackColor="#aaaadd"> </FooterStyle> <AlternatingItemStyle BackColor="#eeeeee"> </AlternatingItemStyle> </asp:DataGrid> <br /> <asp:Checkbox id="chk1" runat="server" Text="Show numeric page navigation buttons" Font-Names="Verdana" Font-Size="8pt" AutoPostBack="true"/> <br /> <table style="background-color:#eeeeee; padding:6"> <tr> <td style="display:inline"> <asp:Label id="lblEnabled" runat="server"/><br /> <asp:Label id="lblCurrentIndex" runat="server"/><br /> <asp:Label id="lblPageCount" runat="server"/><br /> <asp:Label id="lblPageSize" runat="server"/><br /> </td> </tr> </table> </form> </body> </html>
<%@ Page Language="C#" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <script runat="server"> ICollection CreateDataSource() { // Create sample data for the DataGrid control. DataTable dt = new DataTable(); DataRow dr; // Define the columns of the table. dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32))); dt.Columns.Add(new DataColumn("StringValue", typeof(string))); dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double))); // Populate the table with sample values. for (int i = 0; i < 5; i++) { dr = dt.NewRow(); dr[0] = i; dr[1] = "Item " + i.ToString(); dr[2] = 1.23 * (i + 1); dt.Rows.Add(dr); } DataView dv = new DataView(dt); return dv; } void Page_Load(Object sender, EventArgs e) { // Load sample data only once when the page is first loaded. if (!IsPostBack) { ItemsGrid.DataSource = CreateDataSource(); ItemsGrid.DataBind(); } } void Button_Click(Object sender, EventArgs e) { // Count the number of selected items in the DataGrid control. int count = 0; // Display the selected times. Message.Text = "You Selected: <br />"; // Iterate through each item (row) in the DataGrid control and determine // whether it is selected. foreach (DataGridItem item in ItemsGrid.Items) { DetermineSelection(item, ref count); } // If no items are selected, display the appropriate message. if (count == 0) { Message.Text = "Not items selected"; } } void DetermineSelection(DataGridItem item, ref int count) { // Retrieve the SelectCheckBox CheckBox control from the specified item (row) in the // DataGrid control. CheckBox selection = (CheckBox)item.FindControl("SelectCheckBox"); // If the item is selected, display the appropriate message and increment the count // of selected items. if (selection != null) { if (selection.Checked) { Message.Text += "- " + item.Cells[1].Text + "<br />"; count++; } } } void Selection_Change(Object sender, EventArgs e) { // Set the background color for the heading and footer sections of // the DataGrid control. ItemsGrid.HeaderStyle.BackColor = System.Drawing.Color.FromName(List.SelectedItem.Value); ItemsGrid.FooterStyle.BackColor = System.Drawing.Color.FromName(List.SelectedItem.Value); } </script> <head runat="server"> <title>DataGrid HeaderStyle and FooterStyle Example</title> </head> <body> <form id="form1" runat="server"> <h3>DataGrid HeaderStyle and FooterStyle Example</h3> Select a backcolor for the header and footer sections. <br /><br /> <b>Product List</b> <asp:DataGrid id="ItemsGrid" BorderColor="black" BorderWidth="1" CellPadding="3" ShowFooter="True" AutoGenerateColumns="False" runat="server"> <HeaderStyle BackColor="White"> </HeaderStyle> <FooterStyle BackColor="White"> </FooterStyle> <Columns> <asp:BoundColumn DataField="IntegerValue" HeaderText="Item"/> <asp:BoundColumn DataField="StringValue" HeaderText="Description"/> <asp:BoundColumn DataField="CurrencyValue" HeaderText="Price" DataFormatString="{0:c}"> <ItemStyle HorizontalAlign="Right"> </ItemStyle> </asp:BoundColumn> <asp:TemplateColumn HeaderText="Select Item"> <ItemTemplate> <asp:CheckBox id="SelectCheckBox" Text="Add to Cart" Checked="False" runat="server"/> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:DataGrid> <br /><br /> <asp:Button id="SubmitButton" Text="Submit" OnClick = "Button_Click" runat="server"/> <br /><br /> <asp:Label id="Message" runat="server"/> <hr /> Header and footer backcolor: <br /> <asp:DropDownList id="List" AutoPostBack="True" OnSelectedIndexChanged="Selection_Change" runat="server"> <asp:ListItem Selected="True" Value="White"> White </asp:ListItem> <asp:ListItem Value="Silver"> Silver </asp:ListItem> <asp:ListItem Value="DarkGray"> Dark Gray </asp:ListItem> <asp:ListItem Value="Khaki"> Khaki </asp:ListItem> <asp:ListItem Value="DarkKhaki"> Dark Khaki </asp:ListItem> </asp:DropDownList> </form> </body> </html>
Available since 1.1
