DataGridItem.DataItem Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft das Datenelement ab, das durch das DataGridItem-Objekt im DataGrid-Steuerelement dargestellt wird, oder legt dieses fest.
public:
virtual property System::Object ^ DataItem { System::Object ^ get(); void set(System::Object ^ value); };
public virtual object DataItem { get; set; }
member this.DataItem : obj with get, set
Public Overridable Property DataItem As Object
Eigenschaftswert
Ein Object, das ein Datenelement im DataGrid-Steuerelement darstellt.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie die DataItem Eigenschaft verwendet wird, um den Inhalt der Datenelemente im DataGrid Steuerelement anzuzeigen.
Hinweis
Im folgenden Codebeispiel wird das Einzeldateicodemodell verwendet und funktioniert möglicherweise nicht ordnungsgemäß, wenn sie direkt in eine CodeBehind-Datei kopiert werden. Dieses Codebeispiel muss in eine leere Textdatei kopiert werden, die über eine ASPX-Erweiterung verfügt.
<%@ 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 Item_Created(Object sender, DataGridItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item ||
e.Item.ItemType == ListItemType.AlternatingItem ||
e.Item.ItemType == ListItemType.SelectedItem ||
e.Item.ItemType == ListItemType.EditItem)
{
Label1.Text += "<br />" + e.Item.ItemType.ToString() +
" - " + ((DataRowView)e.Item.DataItem).Row.ItemArray[1].ToString();
}
else
{
Label1.Text += "<br />" + e.Item.ItemType.ToString();
}
}
</script>
<head runat="server">
<title>DataGridItem DataItem Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGridItem DataItem Example</h3>
<asp:DataGrid id="ItemsGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
ShowFooter="true"
OnItemCreated="Item_Created"
AutoGenerateColumns="true">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<FooterStyle BackColor="#00aaaa">
</FooterStyle>
</asp:DataGrid>
<br />
<asp:Label id="Label1"
Text="Items in the DataGrid Control: <br />"
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 Item_Created(sender As Object, e As DataGridItemEventArgs)
If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.SelectedItem Or e.Item.ItemType = ListItemType.EditItem Then
Label1.Text &= "<br />" & e.Item.ItemType.ToString() & " - " & CType(e.Item.DataItem, DataRowView).Row.ItemArray(1).ToString()
Else
Label1.Text &= "<br />" & e.Item.ItemType.ToString()
End If
End Sub 'Item_Created
</script>
<head runat="server">
<title>DataGridItem DataItem Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGridItem DataItem Example</h3>
<asp:DataGrid id="ItemsGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
ShowFooter="true"
OnItemCreated="Item_Created"
AutoGenerateColumns="true">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<FooterStyle BackColor="#00aaaa">
</FooterStyle>
</asp:DataGrid>
<br />
<asp:Label id="Label1"
Text="Items in the DataGrid Control: <br />"
runat="server"/>
</form>
</body>
</html>
Hinweise
Verwenden Sie die DataItem Eigenschaft, um die Eigenschaften eines Datenelements anzugeben oder zu bestimmen, das durch das DataGridItem Objekt im DataGrid Steuerelement dargestellt wird.
Hinweis
Diese Eigenschaft gilt nur für Datenelemente im DataGrid Steuerelement. Die ItemType Eigenschaft muss auf ListItemType.Item
, ListItemType.AlternatingItem
, ListItemType.SelectedItem
, oder ListItemType.EditItem
.