DataRow.ItemArray Eigenschaft

Definition

Ruft alle Werte für diese Zeile über ein Array ab oder legt diese fest.Gets or sets all the values for this row through an array.

public:
 property cli::array <System::Object ^> ^ ItemArray { cli::array <System::Object ^> ^ get(); void set(cli::array <System::Object ^> ^ value); };
public object[] ItemArray { get; set; }
member this.ItemArray : obj[] with get, set
Public Property ItemArray As Object()

Eigenschaftswert

Object[]

Ein Array vom Typ Object.An array of type Object.

Ausnahmen

Das Array ist größer als die Anzahl der Spalten in der Tabelle.The array is larger than the number of columns in the table.

Ein Wert im Array stimmt nicht mit dem DataType in der entsprechenden DataColumn überein.A value in the array does not match its DataType in its respective DataColumn.

Bei einem Bearbeitungsvorgang wurde eine Einschränkung verletzt.An edit broke a constraint.

Bei einem Bearbeitungsvorgang wurde versucht, den Wert einer schreibgeschützten Spalte zu ändern.An edit tried to change the value of a read-only column.

Bei einem Bearbeitungsvorgang wurde versucht, einen NULL-Wert in einer Spalte zu platzieren, in der AllowDBNull für das DataColumn-Objekts false ist.An edit tried to put a null value in a column where AllowDBNull of the DataColumn object is false.

Die Zeile wurde gelöscht.The row has been deleted.

Beispiele

In den folgenden Beispielen wird gezeigt, wie Sie mithilfe der ItemArray -Eigenschaft Werte erhalten und festlegen können.The following examples show how to get and set values using the ItemArray property.

   private void CreateRowsWithItemArray()
   {
       // Make a DataTable using the function below.
       DataTable dt = MakeTableWithAutoIncrement();
       DataRow relation;
       // Declare the array variable.
       object [] rowArray = new object[2];
       // Create 10 new rows and add to DataRowCollection.
       for(int i = 0; i <10; i++)
       {
           rowArray[0]=null;
           rowArray[1]= "item " + i;
           relation = dt.NewRow();
           relation.ItemArray = rowArray;
           dt.Rows.Add(relation);
       }
       PrintTable(dt);
   }

   private DataTable MakeTableWithAutoIncrement()
   {
       // Make a table with one AutoIncrement column.
       DataTable table = new DataTable("table");
       DataColumn idColumn = new DataColumn("id", 
           Type.GetType("System.Int32"));
       idColumn.AutoIncrement = true;
       idColumn.AutoIncrementSeed = 10;
       table.Columns.Add(idColumn);
   
       DataColumn firstNameColumn = new DataColumn("Item", 
           Type.GetType("System.String"));
       table.Columns.Add(firstNameColumn);
       return table;
   }

   private void PrintTable(DataTable table)
   {
       foreach(DataRow row in table.Rows)
       {
           foreach(DataColumn column in table.Columns)
           {
               Console.WriteLine(row[column]);
           }
       }
   }
Private Sub CreateRowsWithItemArray()
    ' Make a DataTable using the function below.
    Dim dt As DataTable = MakeTableWithAutoIncrement()
    Dim relation As DataRow

    ' Declare the array variable.
    Dim rowArray(1) As Object

    ' Create 10 new rows and add to DataRowCollection.
    Dim i As Integer
    For i = 0 to 9
       rowArray(0) = DBNull.Value
       rowArray(1)= "item " & i.ToString()
       relation = dt.NewRow()
       relation.ItemArray = rowArray
       dt.Rows.Add(relation)
    Next
    PrintTable(dt)
End Sub
 
Private Function MakeTableWithAutoIncrement() As DataTable
    ' Make a table with one AutoIncrement column.
    Dim table As New DataTable("table")
    Dim idColumn As New DataColumn("id", _
        Type.GetType("System.Int32"))
    idColumn.AutoIncrement = True
    idColumn.AutoIncrementSeed = 10
    table.Columns.Add (idColumn)
    
    Dim firstNameColumn As New DataColumn( _
        "Item", Type.GetType("System.String"))
    table.Columns.Add(firstNameColumn)
    MakeTableWithAutoIncrement = table
End Function
 
Private Sub PrintTable(table As DataTable)
    Dim row As DataRow
    Dim column As DataColumn
    For Each row in table.Rows
       For Each column in table.Columns
          Console.WriteLine(row(column))
       Next
    Next
End Sub

Hinweise

Sie können diese Eigenschaft verwenden, um Werte für diese Zeile über ein Array festzulegen oder zu erhalten.You can use this property to set or get values for this row through an array. Wenn Sie diese Eigenschaft verwenden, um Werte festzulegen, muss das Array dieselbe Größe und Reihenfolge aufweisen wie die Spalten Auflistung.If you use this property to set values, the array must have the same size and ordering as the column collection. Durch null dieItemArray Übergabe von wird angegeben, dass kein Wert angegeben wurde.Passing null in the ItemArray indicates that no value was specified.

Benutzer können Ausnahmen im ColumnChanging -Ereignis RowChanging oder im-Ereignis generieren.Users can generate exceptions in the ColumnChanging event or the RowChanging event.

Gilt für:

Siehe auch