DataGrid.SelectedItemStyle 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
DataGrid 컨트롤에서 현재 선택된 항목의 스타일 속성을 가져옵니다.
public:
virtual property System::Web::UI::WebControls::TableItemStyle ^ SelectedItemStyle { System::Web::UI::WebControls::TableItemStyle ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public virtual System.Web.UI.WebControls.TableItemStyle SelectedItemStyle { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.SelectedItemStyle : System.Web.UI.WebControls.TableItemStyle
Public Overridable ReadOnly Property SelectedItemStyle As TableItemStyle
속성 값
TableItemStyle 컨트롤에서 현재 선택된 항목의 스타일 속성을 포함하는 DataGrid 개체입니다. 기본값은 빈 TableItemStyle 개체입니다.
- 특성
예제
다음 코드 예제에 사용 하는 방법을 보여 줍니다 SelectedItemStyle 속성에서 선택한 항목의 배경색을 설정 하는 DataGrid 노란색으로 제어 합니다.
<%@ 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 = new DataTable();
DataView CartView;
void Page_Load(Object sender, EventArgs e)
{
DataRow dr;
if (Session["ShoppingCart"] == null)
{
Cart.Columns.Add(new DataColumn("Qty", typeof(String)));
Cart.Columns.Add(new DataColumn("Item", typeof(String)));
Cart.Columns.Add(new DataColumn("Price", typeof(String)));
Session["ShoppingCart"] = Cart;
// Create rows and add sample data.
for (int i = 1; i <= 9; i++)
{
dr = Cart.NewRow();
if (i % 2 != 0)
dr[0] = "2";
else
dr[0] = "1";
dr[1] = "Item " + i.ToString();
dr[2] = (1.23 * (i + 1)).ToString();
Cart.Rows.Add(dr);
}
}
else
Cart = (DataTable)Session["ShoppingCart"];
CartView = new DataView(Cart);
CartView.Sort="Item";
if (!IsPostBack)
BindGrid();
}
void MyDataGrid_Select(Object sender, EventArgs e)
{
Label1.Text = "You selected " +
MyDataGrid.SelectedItem.Cells[1].Text +
".<br />" +
MyDataGrid.SelectedItem.Cells[1].Text +
" has an index number of " +
MyDataGrid.SelectedIndex.ToString() + ".";
}
void Select_Button_Click(Object sender, EventArgs e)
{
MyDataGrid.SelectedIndex = 4;
}
void UnSelect_Button_Click(Object sender, EventArgs e)
{
MyDataGrid.SelectedIndex = -1;
Label1.Text = "";
}
void BindGrid()
{
MyDataGrid.DataSource = CartView;
MyDataGrid.DataBind();
}
</script>
<head runat="server">
<title>DataGrid Selection Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGrid Selection Example</h3>
<asp:DataGrid id="MyDataGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
Font-Names="Verdana"
Font-Size="8pt"
OnSelectedIndexChanged="MyDataGrid_Select"
AutoGenerateColumns="false">
<HeaderStyle BackColor="#aaaadd">
</HeaderStyle>
<SelectedItemStyle BackColor="Yellow">
</SelectedItemStyle>
<Columns>
<asp:ButtonColumn
HeaderText="Select Item"
ButtonType="LinkButton"
Text="Select"
CommandName="Select">
</asp:ButtonColumn>
<asp:BoundColumn
HeaderText="Item"
ReadOnly="true"
DataField="Item"/>
<asp:BoundColumn
HeaderText="Quantity"
DataField="Qty"/>
<asp:BoundColumn
HeaderText="Price"
DataField="Price"/>
</Columns>
</asp:DataGrid>
<br /><br />
<asp:Button id="Button1"
Text="Select Item 5"
OnClick="Select_Button_Click"
runat="server"/>
<asp:Button id="Button2"
Text="Unselect Item"
OnClick="UnSelect_Button_Click"
runat="server"/>
<br /><br />
<asp:Label id="Label1" 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 language="VB" runat="server">
Dim Cart As New DataTable
Dim CartView As DataView
Sub Page_Load(sender As Object, e As EventArgs)
Dim dr As DataRow
If Session("ShoppingCart") Is Nothing Then
Cart.Columns.Add(New DataColumn("Qty", GetType(String)))
Cart.Columns.Add(New DataColumn("Item", GetType(String)))
Cart.Columns.Add(New DataColumn("Price", GetType(String)))
Session("ShoppingCart") = Cart
' Create rows and add sample data.
Dim i As Integer
For i = 1 To 9
dr = Cart.NewRow()
If i Mod 2 <> 0 Then
dr(0) = "2"
Else
dr(0) = "1"
End If
dr(1) = "Item " & i.ToString()
dr(2) =(1.23 *(i + 1)).ToString()
Cart.Rows.Add(dr)
Next i
Else
Cart = CType(Session("ShoppingCart"), DataTable)
End If
CartView = New DataView(Cart)
CartView.Sort = "Item"
If Not IsPostBack Then
BindGrid()
End If
End Sub 'Page_Load
Sub MyDataGrid_Select(sender As Object, e As EventArgs)
Label1.Text = "You selected " & MyDataGrid.SelectedItem.Cells(1).Text & _
".<br />" & MyDataGrid.SelectedItem.Cells(1).Text & " has an index number of " & _
MyDataGrid.SelectedIndex.ToString() & "."
End Sub 'MyDataGrid_Select
Sub Select_Button_Click(sender As Object, e As EventArgs)
MyDataGrid.SelectedIndex = 4
End Sub 'Select_Button_Click
Sub UnSelect_Button_Click(sender As Object, e As EventArgs)
MyDataGrid.SelectedIndex = - 1
Label1.Text = ""
End Sub 'UnSelect_Button_Click
Sub BindGrid()
MyDataGrid.DataSource = CartView
MyDataGrid.DataBind()
End Sub 'BindGrid
</script>
<head runat="server">
<title>DataGrid Selection Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGrid Selection Example</h3>
<asp:DataGrid id="MyDataGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
Font-Names="Verdana"
Font-Size="8pt"
OnSelectedIndexChanged="MyDataGrid_Select"
AutoGenerateColumns="false">
<HeaderStyle BackColor="#aaaadd">
</HeaderStyle>
<SelectedItemStyle BackColor="Yellow">
</SelectedItemStyle>
<Columns>
<asp:ButtonColumn
HeaderText="Select Item"
ButtonType="LinkButton"
Text="Select"
CommandName="Select">
</asp:ButtonColumn>
<asp:BoundColumn
HeaderText="Item"
ReadOnly="true"
DataField="Item"/>
<asp:BoundColumn
HeaderText="Quantity"
DataField="Qty"/>
<asp:BoundColumn
HeaderText="Price"
DataField="Price"/>
</Columns>
</asp:DataGrid>
<br /><br />
<asp:Button id="Button1"
Text="Select Item 5"
OnClick="Select_Button_Click"
runat="server"/>
<asp:Button id="Button2"
Text="Unselect Item"
OnClick="UnSelect_Button_Click"
runat="server"/>
<br /><br />
<asp:Label id="Label1" runat="server"/>
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True"%>
<%@ Import Namespace="System.Data" %>
<%@ 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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>DataGrid SelectedItemStyle Example</title>
<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 < 9; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = 1.23 * (i + 1);
dt.Rows.Add(dr);
}
// Create a DataView from the DataTable.
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 IndexChange_Command(Object sender, EventArgs e)
{
// Display the details of the selected item.
DetailsLabel.Text = "Item Number: " + ItemsGrid.SelectedItem.Cells[1].Text + "<br />" +
"Description: " + ItemsGrid.SelectedItem.Cells[2].Text + "<br />" +
"Price: $" + ItemsGrid.SelectedItem.Cells[3].Text + "<br />";
}
void Selection_Change(Object sender, EventArgs e)
{
// Set the background color for the paging controls section of
// the DataGrid control.
ItemsGrid.SelectedItemStyle.BackColor = System.Drawing.Color.FromName(List.SelectedItem.Value);
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGrid SelectedItemStyle Example</h3>
Select an item and a backcolor for the selected item.
<br /><br />
<asp:DataGrid id="ItemsGrid"
BorderColor="Black"
ShowFooter="False"
CellPadding="3"
CellSpacing="0"
HeaderStyle-BackColor="#aaaadd"
OnSelectedIndexChanged="IndexChange_Command"
runat="server">
<SelectedItemStyle BackColor="White">
</SelectedItemStyle>
<Columns>
<asp:ButtonColumn Text="Select"
CommandName="Select"/>
</Columns>
</asp:DataGrid>
<hr />
<table style="border-color:Black; border-width:1" cellspacing="0">
<tr style="background-color:#aaaadd">
<td>
Details
</td>
</tr>
<tr>
<td>
<asp:Label id="DetailsLabel"
runat="server"
Text="No item selected."/>
</td>
</tr>
</table>
<table cellpadding="5">
<tr>
<td>
Backcolor:
</td>
</tr>
<tr>
<td>
<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>
</td>
</tr>
</table>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True"%>
<%@ Import Namespace="System.Data" %>
<%@ 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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>DataGrid SelectedItemStyle Example</title>
<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(Integer)))
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 " & i.ToString()
dr(2) = 1.23 * (i + 1)
dt.Rows.Add(dr)
Next i
' Create a DataView from the DataTable.
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 IndexChange_Command(sender As Object, e As EventArgs)
' Display the details of the selected item.
DetailsLabel.Text = "Item Number: " & ItemsGrid.SelectedItem.Cells(1).Text & "<br />" & _
"Description: " & ItemsGrid.SelectedItem.Cells(2).Text & "<br />" & _
"Price: $" & ItemsGrid.SelectedItem.Cells(3).Text & "<br />"
End Sub
Sub Selection_Change(sender As Object, e As EventArgs)
' Set the background color for the paging controls section of
' the DataGrid control.
ItemsGrid.SelectedItemStyle.BackColor = System.Drawing.Color.FromName(List.SelectedItem.Value)
End Sub
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGrid SelectedItemStyle Example</h3>
Select an item and a backcolor for the selected item.
<br /><br />
<asp:DataGrid id="ItemsGrid"
BorderColor="Black"
ShowFooter="False"
CellPadding="3"
CellSpacing="0"
HeaderStyle-BackColor="#aaaadd"
OnSelectedIndexChanged="IndexChange_Command"
runat="server">
<SelectedItemStyle BackColor="White">
</SelectedItemStyle>
<Columns>
<asp:ButtonColumn Text="Select"
CommandName="Select"/>
</Columns>
</asp:DataGrid>
<hr />
<table style="border-color:Black; border-width:1" cellspacing="0">
<tr style="background-color:#aaaadd">
<td>
Details
</td>
</tr>
<tr>
<td>
<asp:Label id="DetailsLabel"
runat="server"
Text="No item selected."/>
</td>
</tr>
</table>
<table cellpadding="5">
<tr>
<td>
Backcolor:
</td>
</tr>
<tr>
<td>
<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>
</td>
</tr>
</table>
</form>
</body>
</html>
설명
사용 합니다 SelectedItemStyle 속성에서 선택한 항목에 대 한 사용자 지정 스타일을 제공 하는 DataGrid 컨트롤입니다. 조정할 수 있는 공통 스타일 특성 전경색, 배경색, 글꼴 및 셀 내용 맞춤을 포함 합니다. 모양을 향상 시킬 다른 스타일을 사용 하 여 DataGrid 컨트롤입니다.
항목의 스타일 속성을 DataGrid 제어 계층을 통해 다른 하나씩 스타일 속성에서 상속 됩니다. 계층에서 낮은 설정 항목 스타일 속성은 계층 구조의 상위 항목 스타일 속성에 의해 상속 됩니다. 예를 들어 빨강 글꼴을 지정 하는 경우는 ItemStyle 속성을 다른 항목 스타일의 모든 속성을 DataGrid 컨트롤 빨강 글꼴을 갖게 됩니다. 이 옵션을 사용 하면 단일 항목의 스타일 속성을 설정 하 여 컨트롤에 공통 된 모양을 제공할 수 있습니다. 스타일 속성을 설정 하 여 상위 계층에 있는 항목 스타일 속성에 대 한 상속 된 스타일 설정을 재정의할 수 있습니다. 예를 들어, 파랑 글꼴을 지정할 수 있습니다 합니다 AlternatingItemStyle 속성에 지정 된 빨간색 글꼴로 재정의 ItemStyle 속성입니다. 다음 표에서 순위가 가장 높은 계층 순서를 나열합니다.
우선 순위 | 스타일 속성 |
---|---|
1 | EditItemStyle |
2 | SelectedItemStyle |
3 | AlternatingItemStyle |
4 | ItemStyle |
5 | ControlStyle |
선택한 항목에 대 한 사용자 지정 스타일을 지정 하려면 합니다 <SelectedItemStyle>
을 열고 닫는 태그 사이 DataGrid 제어 합니다. 다음을 표시 하 여 스타일 특성을 <SelectedItemStyle>
태그입니다.