DataGrid.ItemStyle Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient les propriétés de style des éléments figurant dans le contrôle DataGrid.
public:
virtual property System::Web::UI::WebControls::TableItemStyle ^ ItemStyle { System::Web::UI::WebControls::TableItemStyle ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public virtual System.Web.UI.WebControls.TableItemStyle ItemStyle { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.ItemStyle : System.Web.UI.WebControls.TableItemStyle
Public Overridable ReadOnly Property ItemStyle As TableItemStyle
Valeur de propriété
Objet TableItemStyle qui contient les propriétés de style des éléments figurant dans le contrôle DataGrid. La valeur par défaut est un objet TableItemStyle vide.
- Attributs
Exemples
L’exemple de code suivant montre comment utiliser la ItemStyle propriété pour définir la couleur d’arrière-plan des éléments en DataGrid jaune.
<%@ 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">
DataTable Cart;
DataView CartView;
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("CurrencyValue", typeof(double)));
for (int i = 0; i < 10; 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)
{
if (!IsPostBack)
{
// Load this data only once.
ItemsGrid.DataSource= CreateDataSource();
ItemsGrid.DataBind();
}
}
</script>
<head runat="server">
<title>DataGrid Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGrid Example</h3>
<asp:DataGrid id="ItemsGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="10"
ShowFooter="true"
AutoGenerateColumns="true">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<ItemStyle BackColor="yellow">
</ItemStyle>
<FooterStyle BackColor="#00aaaa">
</FooterStyle>
</asp:DataGrid>
</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">
Dim Cart As DataTable
Dim CartView As DataView
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("CurrencyValue", GetType(Double)))
Dim i As Integer
For i = 0 To 9
dr = dt.NewRow()
dr(0) = i
dr(1) = "Item " & i.ToString()
dr(2) = 1.23 *(i + 1)
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 Not IsPostBack Then
' Load this data only once.
ItemsGrid.DataSource = CreateDataSource()
ItemsGrid.DataBind()
End If
End Sub 'Page_Load
</script>
<head runat="server">
<title>DataGrid Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGrid Example</h3>
<asp:DataGrid id="ItemsGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="10"
ShowFooter="true"
AutoGenerateColumns="true">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<ItemStyle BackColor="yellow">
</ItemStyle>
<FooterStyle BackColor="#00aaaa">
</FooterStyle>
</asp:DataGrid>
</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 Selection_Change(Object sender, EventArgs e)
{
// Set the background color for the items and alternating items in
// the DataGrid control. Notice that the ItemStyle property affects
// the even-numbered items, while the AlternatingItemStyle property
// affects the odd-numbered items.
ItemsGrid.ItemStyle.BackColor =
System.Drawing.Color.FromName(ItemBackColorList.SelectedItem.Value);
ItemsGrid.AlternatingItemStyle.BackColor =
System.Drawing.Color.FromName(AltItemBackColorList.SelectedItem.Value);
}
</script>
<head runat="server">
<title>DataGrid ItemStyle and AlternatingItemStyle Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGrid ItemStyle and AlternatingItemStyle Example</h3>
Select background colors for the items and alternating items.
<br /><br />
<b>Product List</b>
<asp:DataGrid id="ItemsGrid"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
AutoGenerateColumns="False"
runat="server">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<ItemStyle BackColor="White">
</ItemStyle>
<AlternatingItemStyle BackColor="White">
</AlternatingItemStyle>
<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>
</Columns>
</asp:DataGrid>
<hr />
<table cellpadding="5">
<tr>
<td>
Item BackColor:
</td>
<td>
Alternating item BackColor:
</td>
</tr>
<tr>
<td>
<asp:DropDownList id="ItemBackColorList"
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>
</td>
<td>
<asp:DropDownList id="AltItemBackColorList"
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>
</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 runat="server">
Function CreateDataSource() As ICollection
' 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 4
dr = dt.NewRow()
dr(0) = i
dr(1) = "Item " & i.ToString()
dr(2) = 1.23 * (i + 1)
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 Selection_Change(sender As Object, e As EventArgs)
' Set the background color for the items and alternating items in
' the DataGrid control. Notice that the ItemStyle property affects
' the even-numbered items, while the AlternatingItemStyle property
' affects the odd-numbered items.
ItemsGrid.ItemStyle.BackColor = _
System.Drawing.Color.FromName(ItemBackColorList.SelectedItem.Value)
ItemsGrid.AlternatingItemStyle.BackColor = _
System.Drawing.Color.FromName(AltItemBackColorList.SelectedItem.Value)
End Sub
</script>
<head runat="server">
<title>DataGrid ItemStyle and AlternatingItemStyle Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGrid ItemStyle and AlternatingItemStyle Example</h3>
Select background colors for the items and alternating items.
<br /><br />
<b>Product List</b>
<asp:DataGrid id="ItemsGrid"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
AutoGenerateColumns="False"
runat="server">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<ItemStyle BackColor="White">
</ItemStyle>
<AlternatingItemStyle BackColor="White">
</AlternatingItemStyle>
<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>
</Columns>
</asp:DataGrid>
<hr />
<table cellpadding="5">
<tr>
<td>
Item BackColor:
</td>
<td>
Alternating item BackColor:
</td>
</tr>
<tr>
<td>
<asp:DropDownList id="ItemBackColorList"
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>
</td>
<td>
<asp:DropDownList id="AltItemBackColorList"
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>
</td>
</tr>
</table>
</form>
</body>
</html>
Remarques
Utilisez cette propriété pour fournir un style personnalisé pour les éléments du DataGrid contrôle. Les attributs de style courants qui peuvent être ajustés incluent forecolor, backcolor, police et alignement du contenu dans la cellule. La fourniture d’un autre style améliore l’apparence du DataGrid contrôle.
Les propriétés de style d’élément dans le DataGrid contrôle sont héritées d’une propriété de style d’élément à une autre via une hiérarchie. Les propriétés de style d’élément définies plus bas dans la hiérarchie sont héritées par les propriétés de style d’élément supérieures dans la hiérarchie. Par exemple, si vous spécifiez une police rouge pour la ItemStyle propriété, toutes les autres propriétés de style d’élément dans le DataGrid contrôle auront également une police rouge. Cela vous permet de fournir une apparence commune pour le contrôle en définissant une propriété de style d’élément unique. Vous pouvez remplacer les paramètres de style hérités d’une propriété de style d’élément supérieure dans la hiérarchie en définissant ses propriétés de style. Par exemple, vous pouvez spécifier une police bleue pour la AlternatingItemStyle propriété, en remplaçant la police rouge spécifiée dans la ItemStyle propriété. Le tableau suivant répertorie l’ordre hiérarchique le plus élevé au plus bas.
Priorité | Style, propriété |
---|---|
1 | EditItemStyle |
2 | SelectedItemStyle |
3 | AlternatingItemStyle |
4 | ItemStyle |
5 | ControlStyle |
Pour spécifier un style personnalisé pour les éléments du DataGrid contrôle, placez les <ItemStyle>
balises entre les balises d’ouverture et de fermeture du DataGrid contrôle. Vous pouvez ensuite répertorier les attributs de style dans la balise d’ouverture <ItemStyle>
.
Vous pouvez également utiliser la AlternatingItemStyle propriété pour fournir une apparence différente pour les éléments en alternance dans le DataGrid contrôle.