DataControlField.HeaderText Property
Assembly: System.Web (in system.web.dll)
[LocalizableAttribute(true)] public: virtual property String^ HeaderText { String^ get (); void set (String^ value); }
/** @property */ public String get_HeaderText () /** @property */ public void set_HeaderText (String value)
public function get HeaderText () : String public function set HeaderText (value : String)
Not applicable.
Property Value
A string that is displayed in the header item of the DataControlField.Use the HeaderText property to identify a field in a data control with a friendly name. The most common application of the HeaderText property is to provide meaningful column names for data-bound fields in a GridView or DetailsView control.
Note: |
|---|
| If both the HeaderText and HeaderImageUrl properties are set, the HeaderImageUrl property has precedence. |
The value of this property, when set, can be saved automatically to a resource file by using a designer tool. For more information, see LocalizableAttribute and ASP.NET Globalization and Localization.
The following code example demonstrates how to declaratively set the HeaderText properties of BoundField columns to display text in the column headers of a GridView control. This code example demonstrates a master-details scenario in which a GridView control is used to display a subset of data while the DetailsView control is used to display a larger set of data and insert new records. The example uses two SqlDataSource controls: one to populate the GridView control and one to populate the DetailsView control and insert data.
<%@Page Language="VJ#" %>
<%@Import Namespace="System.Data" %>
<%@Import Namespace="System.Data.Common" %>
<%@Import Namespace="System.Data.SqlClient" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private void On_Inserting(Object sender, SqlDataSourceCommandEventArgs e)
{
// Add the Title parameter from the TemplatedField.
// Cast the first Item of the DetailsView to a Table.
Table tbl = (Table)DetailsView1.get_Controls().get_Item(0);
// Get row two (the third row) from the rows collection.
// This is the row that the DropDownList is in.
TableRowCollection rows = tbl.get_Rows();
TableRow titleRow = rows.get_Item(2);
// Cast the second item in the controls collection of cell one as a
// DropDownList.
DropDownList title = (DropDownList)titleRow.get_Cells().get_Item(1).
get_Controls().get_Item(1);
SqlParameter titleParam = new SqlParameter(
"@Title", title.get_SelectedValue());
e.get_Command().get_Parameters().Add(titleParam);
} //On_Inserting
private void On_Inserted(Object sender, SqlDataSourceStatusEventArgs e)
{
// Explicitly call DataBind to refresh the data
// and show the newly inserted row.
GridView1.DataBind();
} //On_Inserted
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:GridView
id="GridView1"
runat="server"
AutoGenerateColumns="False"
DataKeyNames="EmployeeID"
SelectedIndex="0"
DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField HeaderText="First Name" DataField="FirstName" />
<asp:BoundField HeaderText="Last Name" DataField="LastName" />
<asp:BoundField HeaderText="Title" DataField="Title" />
<asp:ButtonField ButtonType="Link" CommandName="Select" Text="Details..." />
</Columns>
</asp:GridView>
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
ConnectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;"
SelectCommand="SELECT EmployeeID,FirstName,LastName,Title FROM Employees">
</asp:SqlDataSource>
<hr />
<asp:DetailsView
id="DetailsView1"
runat="server"
DataSourceID="SqlDataSource2"
AutoGenerateRows="False"
AutoGenerateInsertButton="True">
<Fields>
<asp:BoundField HeaderText="First Name" DataField="FirstName" ReadOnly="False"/>
<asp:BoundField HeaderText="Last Name" DataField="LastName" ReadOnly="False"/>
<asp:TemplateField HeaderText="Title">
<ItemTemplate>
<asp:DropDownList
runat="server">
<asp:ListItem Selected="True">Sales Representative</asp:ListItem>
<asp:ListItem>Sales Manager</asp:ListItem>
<asp:ListItem>Vice President, Sales</asp:ListItem>
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="Notes" DataField="Notes" ReadOnly="False"/>
</Fields>
</asp:DetailsView>
<asp:SqlDataSource
id="SqlDataSource2"
runat="server"
ConnectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;"
SelectCommand="SELECT * FROM Employees"
InsertCommand="INSERT INTO Employees(FirstName,LastName,Title,Notes)VALUES (@FirstName,@LastName,@Title,@Notes)"
OnInserting="On_Inserting"
OnInserted="On_Inserted"
FilterExpression="EmployeeID=@EmployeeID">
<FilterParameters>
<asp:ControlParameter Name="EmployeeID" ControlId="GridView1" PropertyName="SelectedDataKey.Value"/>
</FilterParameters>
</asp:SqlDataSource>
</form>
</body>
</html>
Note: