Freigeben über


DataGridItem.DataItem-Eigenschaft

Ruft das Datenelement ab, das durch das DataGridItem-Objekt im DataGrid-Steuerelement dargestellt wird, oder legt dieses fest.

Namespace: System.Web.UI.WebControls
Assembly: System.Web (in system.web.dll)

Syntax

'Declaration
Public Overridable Property DataItem As Object
'Usage
Dim instance As DataGridItem
Dim value As Object

value = instance.DataItem

instance.DataItem = value
public virtual Object DataItem { get; set; }
public:
virtual property Object^ DataItem {
    Object^ get ();
    void set (Object^ value);
}
/** @property */
public Object get_DataItem ()

/** @property */
public void set_DataItem (Object value)
public function get DataItem () : Object

public function set DataItem (value : Object)

Eigenschaftenwert

Ein System.Object, das ein Datenelement im DataGrid-Steuerelement darstellt.

Hinweise

Verwenden Sie die DataItem-Eigenschaft zum Angeben bzw. Ermitteln der Eigenschaften eines Datenelements, 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, auf ListItemType.AlternatingItem, auf ListItemType.SelectedItem oder auf ListItemType.EditItem festgelegt werden.

Beispiel

Im folgenden Codebeispiel wird veranschaulicht, wie mit der DataItem-Eigenschaft der Inhalt der Datenelemente im DataGrid-Steuerelement angezeigt wird.

Hinweis

Im folgenden Codebeispiel wird das Einzeldatei-Codemodell verwendet. Das Beispiel funktioniert möglicherweise nicht, wenn es direkt in eine CodeBehind-Datei kopiert wird. Dieses Codebeispiel muss in eine leere Textdatei mit einer ASPX-Erweiterung kopiert werden.

<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
 
<html>
<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>
 
<body>
 
   <form 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="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
 
<html>
<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>
 
<body>
 
   <form 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>

Plattformen

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 unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

DataGridItem-Klasse
DataGridItem-Member
System.Web.UI.WebControls-Namespace
DataGrid-Klasse
System.Object