DataGrid.AlternatingItemStyle プロパティ
アセンブリ: System.Web (system.web.dll 内)

DataGrid の交互の項目のスタイル プロパティを表す TableItemStyle オブジェクト。既定値は空の TableItemStyle オブジェクトです。

AlternatingItemStyle プロパティを使用して、DataGrid コントロールの交互の項目のカスタム スタイルを指定します。調整できる共通スタイル属性には、前景色、背景色、フォント、セル内の内容の配置などがあります。異なるスタイルを指定すると、DataGrid コントロールの外観が詳細に設定されます。
DataGrid コントロールの項目スタイル プロパティは、優先順位に従って、ある項目スタイル プロパティから別の項目スタイル プロパティへと継承されます。優先順位の高い項目スタイル プロパティは、優先順位が低い項目スタイル プロパティの値を継承します。たとえば、ItemStyle プロパティに赤いフォントを指定すると、DataGrid コントロールの他のすべての項目スタイル プロパティにも赤いフォントが設定されます。これにより、単一の項目スタイル プロパティを設定するだけで、コントロールの全体的な外観に統一感を持たせることができます。優先順位の高い項目スタイル プロパティが継承したスタイル設定を無効にする場合は、そのスタイル プロパティに独自の値を設定します。たとえば、AlternatingItemStyle プロパティに青いフォントを指定して、ItemStyle プロパティで指定した赤いフォントをオーバーライドできます。優先順位を高い方から低い方への順序で次の表に示します。
1 | EditItemStyle |
2 | SelectedItemStyle |
3 | AlternatingItemStyle |
4 | ItemStyle |
5 | ControlStyle |
交互の項目のカスタム スタイルを指定するには、<AlternatingItemStyle> タグを DataGrid コントロールの開始タグと終了タグの間に配置します。その後、<AlternatingItemStyle> の開始タグ内にスタイル属性のリストを記述できます。

AlternatingItemStyle プロパティを使用して、DataGrid コントロールの各項目に交互に異なる背景色を指定する方法を次のコード例に示します。
<%@ Page Language="VB" %> <%@ Import Namespace="System.Data" %> <html> <script runat="server"> Function CreateDataSource() As ICollection Dim dt As DataTable = New DataTable() Dim dr As DataRow Dim i As Integer Dim dv As DataView dt.Columns.Add(New DataColumn("IntegerValue", GetType(Integer))) dt.Columns.Add(New DataColumn("StringValue", GetType(String))) dt.Columns.Add(New DataColumn("CurrencyValue", GetType(Double))) For i = 0 to 8 dr = dt.NewRow() dr(0) = i dr(1) = "Item " + i.ToString() dr(2) = 1.23 * (i+1) dt.Rows.Add(dr) Next i dv = New DataView(dt) CreateDataSource = dv End Function Sub Page_Load(sender As Object, e As EventArgs) If Not IsPostBack ' Load this data only once. ItemsGrid.DataSource = CreateDataSource() ItemsGrid.DataBind() End If End Sub </script> <body> <form runat=server> <h3>DataGrid AlternatingItemStyle Example</h3> <b>Product List</b> <asp:DataGrid id="ItemsGrid" BorderColor="black" BorderWidth="1" CellPadding="3" AutoGenerateColumns="false" runat="server"> <HeaderStyle BackColor="#00aaaa"> </HeaderStyle> <ItemStyle BackColor="Yellow"> </ItemStyle> <AlternatingItemStyle BackColor="LightGreen"> </AlternatingItemStyle> <Columns> <asp:BoundColumn HeaderText="Number" DataField="IntegerValue"> </asp:BoundColumn> <asp:BoundColumn HeaderText="Description" DataField="StringValue"> </asp:BoundColumn> <asp:BoundColumn HeaderText="Price" DataField="CurrencyValue" DataFormatString="{0:c}"> </asp:BoundColumn> </Columns> </asp:DataGrid> </form> </body> </html>
<%@ Page Language="C#" %> <%@ Import Namespace="System.Data" %> <html> <script 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("CurrencyValue", typeof(double))); for (int i = 0; i <= 8; 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> <body> <form runat=server> <h3>DataGrid AlternatingItemStyle Example</h3> <b>Product List</b> <asp:DataGrid id="ItemsGrid" BorderColor="black" BorderWidth="1" CellPadding="3" AutoGenerateColumns="false" runat="server"> <HeaderStyle BackColor="#00aaaa"> </HeaderStyle> <ItemStyle BackColor="Yellow"> </ItemStyle> <AlternatingItemStyle BackColor="LightGreen"> </AlternatingItemStyle> <Columns> <asp:BoundColumn HeaderText="Number" DataField="IntegerValue"> </asp:BoundColumn> <asp:BoundColumn HeaderText="Description" DataField="StringValue"> </asp:BoundColumn> <asp:BoundColumn HeaderText="Price" DataField="CurrencyValue" DataFormatString="{0:c}"> </asp:BoundColumn> </Columns> </asp:DataGrid> </form> </body> </html>
<%@ Page Language="JScript" %> <%@ Import Namespace="System.Data" %> <html> <script runat="server"> function CreateDataSource() : ICollection { var dt : DataTable = new DataTable(); var dr : 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"))); for (var i : int = 0; i <= 8; i++) { dr = dt.NewRow(); dr[0] = i; dr[1] = "Item " + i.ToString(); dr[2] = 1.23 * (i + 1); dt.Rows.Add(dr); } var dv : DataView = new DataView(dt); return dv; } function Page_Load(sender : Object, e : EventArgs) { if (!IsPostBack) { // Load this data only once. ItemsGrid.DataSource= CreateDataSource(); ItemsGrid.DataBind(); } } </script> <body> <form runat=server> <h3>DataGrid AlternatingItemStyle Example</h3> <b>Product List</b> <asp:DataGrid id="ItemsGrid" BorderColor="black" BorderWidth="1" CellPadding="3" AutoGenerateColumns="false" runat="server"> <HeaderStyle BackColor="#00aaaa"> </HeaderStyle> <ItemStyle BackColor="Yellow"> </ItemStyle> <AlternatingItemStyle BackColor="LightGreen"> </AlternatingItemStyle> <Columns> <asp:BoundColumn HeaderText="Number" DataField="IntegerValue"> </asp:BoundColumn> <asp:BoundColumn HeaderText="Description" DataField="StringValue"> </asp:BoundColumn> <asp:BoundColumn HeaderText="Price" DataField="CurrencyValue" DataFormatString="{0:c}"> </asp:BoundColumn> </Columns> </asp:DataGrid> </form> </body> </html>
<%@ Page Language="VB" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <html> <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> <body> <form 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="C#" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <html> <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> <body> <form 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>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からDataGrid.AlternatingItemStyle プロパティを検索する場合は、下記のリンクをクリックしてください。

- DataGrid.AlternatingItemStyle プロパティのページへのリンク