DataGridItem.ItemIndex Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera indeks DataGridItem obiektu z Items kolekcji kontrolki DataGrid .
public:
virtual property int ItemIndex { int get(); };
public virtual int ItemIndex { get; }
member this.ItemIndex : int
Public Overridable ReadOnly Property ItemIndex As Integer
Wartość właściwości
Indeks DataGridItem z Items kolekcji kontrolki DataGrid .
Przykłady
Poniższy przykład kodu pokazuje, jak za pomocą ItemIndex właściwości wyświetlić indeks DataGridItem obiektu z Items kolekcji kontrolki DataGrid .
Uwaga
Poniższy przykład kodu używa modelu kodu pojedynczego pliku i może nie działać poprawnie w przypadku skopiowania bezpośrednio do pliku za pomocą kodu. Ten przykładowy kod musi zostać skopiowany do pustego pliku tekstowego z rozszerzeniem aspx. Aby uzyskać więcej informacji na temat modelu kodu Web Forms, zobacz Obsługa i podnoszenie zdarzeń.
<%@ 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)
{
// Need to load this data only once.
ItemsGrid.DataSource = CreateDataSource();
ItemsGrid.DataBind();
}
}
void Button_Click(Object sender, EventArgs e)
{
Label1.Text = "The DataSetIndex of each item in the DataGrid are: <br />";
foreach (DataGridItem item in ItemsGrid.Items)
{
Label1.Text += "<br />" + item.ItemIndex.ToString() +
" - " + item.Cells[1].Text;
}
}
</script>
<head runat="server">
<title>DataGridItem ItemIndex Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGridItem ItemIndex Example</h3>
<asp:DataGrid id="ItemsGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
ShowFooter="true"
AutoGenerateColumns="true">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<FooterStyle BackColor="#00aaaa">
</FooterStyle>
</asp:DataGrid>
<br />
<asp:Button id="Button1"
Text="Display ItemIndex of Items in DataGrid"
OnClick="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 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
' Need to load this data only once.
ItemsGrid.DataSource = CreateDataSource()
ItemsGrid.DataBind()
End If
End Sub 'Page_Load
Sub Button_Click(sender As Object, e As EventArgs)
Label1.Text = "The DataSetIndex of each item in the DataGrid are: <br />"
Dim item As DataGridItem
For Each item In ItemsGrid.Items
Label1.Text &= "<br />" & item.ItemIndex.ToString() & " - " & item.Cells(1).Text
Next item
End Sub 'Button_Click
</script>
<head runat="server">
<title>DataGridItem ItemIndex Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGridItem ItemIndex Example</h3>
<asp:DataGrid id="ItemsGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
ShowFooter="true"
AutoGenerateColumns="true">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<FooterStyle BackColor="#00aaaa">
</FooterStyle>
</asp:DataGrid>
<br />
<asp:Button id="Button1"
Text="Display ItemIndex of Items in DataGrid"
OnClick="Button_Click"
runat="server"/>
<br /><br />
<asp:Label id="Label1"
runat="server"/>
</form>
</body>
</html>
Uwagi
Użyj właściwości , ItemIndex aby określić indeks DataGridItem obiektu z Items kolekcji kontrolki DataGrid .
Uwaga
Ta właściwość ma zastosowanie tylko do elementów danych w kontrolce DataGrid . Właściwość ItemType DataGridItem obiektu musi być ustawiona na ListItemType.Item
, , ListItemType.AlternatingItem``ListItemType.SelectedItem
lub ListItemType.EditItem
.