DataGrid.ShowHeader Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets or sets a value that indicates whether the header is displayed in the DataGrid control.
public:
virtual property bool ShowHeader { bool get(); void set(bool value); };
[System.ComponentModel.Bindable(true)]
public virtual bool ShowHeader { get; set; }
public virtual bool ShowHeader { get; set; }
[<System.ComponentModel.Bindable(true)>]
member this.ShowHeader : bool with get, set
member this.ShowHeader : bool with get, set
Public Overridable Property ShowHeader As Boolean
Property Value
true
to display the header; otherwise, false
. The default value is true
.
- Attributes
Examples
The following code example demonstrates how to use the ShowHeader property to hide the header on the DataGrid control.
<%@ 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)
{
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"
ShowHeader="false"
OnPageIndexChanged="MyDataGrid_Page"
BorderColor="black"
BorderWidth="1"
GridLines="Both"
CellPadding="3"
CellSpacing="0"
Font-Names="Verdana"
Font-Size="8pt">
<HeaderStyle BackColor="#aaaadd">
</HeaderStyle>
<FooterStyle BackColor="#aaaadd">
</FooterStyle>
<AlternatingItemStyle BackColor="#eeeeee">
</AlternatingItemStyle>
<PagerStyle Mode="NumericPages"
HorizontalAlign="Right">
</PagerStyle>
</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="VB" 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="VB" runat="server">
Function CreateDataSource() As ICollection
Dim dt As New DataTable()
Dim dr As DataRow
dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
dt.Columns.Add(New DataColumn("DateTimeValue", GetType(String)))
dt.Columns.Add(New DataColumn("BoolValue", GetType(Boolean)))
Dim i As Integer
For i = 0 To 99
dr = dt.NewRow()
dr(0) = i
dr(1) = "Item " & i.ToString()
dr(2) = DateTime.Now.ToShortDateString()
If i Mod 2 <> 0 Then
dr(3) = True
Else
dr(3) = False
End If
dt.Rows.Add(dr)
Next i
Dim dv As New DataView(dt)
Return dv
End Function 'CreateDataSource
Sub Page_Load(sender As Object, E As EventArgs)
If chk1.Checked Then
MyDataGrid.PagerStyle.Mode = PagerMode.NumericPages
Else
MyDataGrid.PagerStyle.Mode = PagerMode.NextPrev
End If
BindGrid()
End Sub 'Page_Load
Sub MyDataGrid_Page(sender As Object, e As DataGridPageChangedEventArgs)
BindGrid()
End Sub 'MyDataGrid_Page
Sub BindGrid()
MyDataGrid.DataSource = CreateDataSource()
MyDataGrid.DataBind()
ShowStats()
End Sub 'BindGrid
Sub 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
End Sub 'ShowStats
</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"
ShowHeader="false"
OnPageIndexChanged="MyDataGrid_Page"
BorderColor="black"
BorderWidth="1"
GridLines="Both"
CellPadding="3"
CellSpacing="0"
Font-Names="Verdana"
Font-Size="8pt">
<HeaderStyle BackColor="#aaaadd">
</HeaderStyle>
<FooterStyle BackColor="#aaaadd">
</FooterStyle>
<AlternatingItemStyle BackColor="#eeeeee">
</AlternatingItemStyle>
<PagerStyle Mode="NumericPages"
HorizontalAlign="Right">
</PagerStyle>
</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 a Random object to mix up the order of items in the
// sample data.
Random Rand_Num = new Random();
// 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<=8; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + Rand_Num.Next(1, 15).ToString();
dr[2] = 1.23 * Rand_Num.Next(1, 15);
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 Check_Change(Object sender, EventArgs e)
{
// Show or hide the header depending on the user's selection.
if (ShowHeaderCheckBox.Checked)
{
ItemsGrid.ShowHeader = true;
}
else
{
ItemsGrid.ShowHeader = false;
}
// Show or hide the footer depending on the user's selection.
if (ShowFooterCheckBox.Checked)
{
ItemsGrid.ShowFooter = true;
}
else
{
ItemsGrid.ShowFooter = false;
}
}
</script>
<head runat="server">
<title>DataGrid ShowHeader and ShowFooter Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGrid ShowHeader and ShowFooter Example</h3>
Select whether to show or hide the header and footer sections
in the DataGrid control.
<br /><br />
<b>Product List</b>
<asp:DataGrid id="ItemsGrid"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
ShowHeader="True"
ShowFooter="True"
AutoGenerateColumns="False"
runat="server">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<FooterStyle BackColor="#00aaaa">
</FooterStyle>
<Columns>
<asp:BoundColumn DataField="IntegerValue"
SortExpression="IntegerValue"
HeaderText="Item"/>
<asp:BoundColumn DataField="StringValue"
SortExpression="StringValue"
HeaderText="Description"/>
<asp:BoundColumn DataField="CurrencyValue"
HeaderText="Price"
SortExpression="CurrencyValue"
DataFormatString="{0:c}">
<ItemStyle HorizontalAlign="Right">
</ItemStyle>
</asp:BoundColumn>
</Columns>
</asp:DataGrid>
<hr />
<asp:CheckBox id="ShowHeaderCheckBox"
Text="Show header"
AutoPostBack="True"
Checked="True"
OnCheckedChanged="Check_Change"
runat="server"/>
 
<asp:CheckBox id="ShowFooterCheckBox"
Text="Show footer"
AutoPostBack="True"
Checked="True"
OnCheckedChanged="Check_Change"
runat="server"/>
</form>
</body>
</html>
<%@ Page Language="VB" 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">
Function CreateDataSource() As ICollection
' Create a Random object to mix up the order of items in the
' sample data.
Dim Rand_Num As Random = New Random()
' Create sample data for the DataGrid control.
Dim dt As DataTable = New DataTable()
Dim dr As DataRow
' Define the columns of the table.
dt.Columns.Add(new DataColumn("IntegerValue", GetType(Int32)))
dt.Columns.Add(new DataColumn("StringValue", GetType(String)))
dt.Columns.Add(new DataColumn("CurrencyValue", GetType(Double)))
' Populate the table with sample values.
Dim i As Integer
For i = 0 To 8
dr = dt.NewRow()
dr(0) = i
dr(1) = "Item " & Rand_Num.Next(1, 15).ToString()
dr(2) = 1.23 * Rand_Num.Next(1, 15)
dt.Rows.Add(dr)
Next i
Dim dv As DataView = New DataView(dt)
Return dv
End Function
Sub Page_Load(sender As Object, e As EventArgs)
' Load sample data only once, when the page is first loaded.
If Not IsPostBack Then
ItemsGrid.DataSource = CreateDataSource()
ItemsGrid.DataBind()
End If
End Sub
Sub Check_Change(sender As Object, e As EventArgs)
' Show or hide the header depending on the user's selection.
If ShowHeaderCheckBox.Checked Then
ItemsGrid.ShowHeader = True
Else
ItemsGrid.ShowHeader = False
End If
' Show or hide the footer depending on the user's selection.
If ShowFooterCheckBox.Checked Then
ItemsGrid.ShowFooter = True
Else
ItemsGrid.ShowFooter = False
End If
End Sub
</script>
<head runat="server">
<title>DataGrid ShowHeader and ShowFooter Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGrid ShowHeader and ShowFooter Example</h3>
Select whether to show or hide the header and footer sections
in the DataGrid control.
<br /><br />
<b>Product List</b>
<asp:DataGrid id="ItemsGrid"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
ShowHeader="True"
ShowFooter="True"
AutoGenerateColumns="False"
runat="server">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<FooterStyle BackColor="#00aaaa">
</FooterStyle>
<Columns>
<asp:BoundColumn DataField="IntegerValue"
SortExpression="IntegerValue"
HeaderText="Item"/>
<asp:BoundColumn DataField="StringValue"
SortExpression="StringValue"
HeaderText="Description"/>
<asp:BoundColumn DataField="CurrencyValue"
HeaderText="Price"
SortExpression="CurrencyValue"
DataFormatString="{0:c}">
<ItemStyle HorizontalAlign="Right">
</ItemStyle>
</asp:BoundColumn>
</Columns>
</asp:DataGrid>
<hr />
<asp:CheckBox id="ShowHeaderCheckBox"
Text="Show header"
AutoPostBack="True"
Checked="True"
OnCheckedChanged="Check_Change"
runat="server"/>
 
<asp:CheckBox id="ShowFooterCheckBox"
Text="Show footer"
AutoPostBack="True"
Checked="True"
OnCheckedChanged="Check_Change"
runat="server"/>
</form>
</body>
</html>
Remarks
Set this property to true
to display the header in the DataGrid. The appearance of the header is controlled by using the HeaderStyle property.