DataRow.ItemArray 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 alle Werte für diese Zeile über ein Array ab oder legt diese fest.
public:
property cli::array <System::Object ^> ^ ItemArray { cli::array <System::Object ^> ^ get(); void set(cli::array <System::Object ^> ^ value); };
public object?[] ItemArray { get; set; }
public object[] ItemArray { get; set; }
member this.ItemArray : obj[] with get, set
Public Property ItemArray As Object()
Eigenschaftswert
Ein Array vom Typ Object.
Ausnahmen
Das Array ist größer als die Anzahl der Spalten in der Tabelle.
Ein Wert im Array stimmt nicht mit dem DataType in der entsprechenden DataColumn überein.
Bei einem Bearbeitungsvorgang wurde eine Einschränkung verletzt.
Bei einem Bearbeitungsvorgang wurde versucht, den Wert einer schreibgeschützten Spalte zu ändern.
Bei einem Bearbeitungsvorgang wurde versucht, einen NULL-Wert in einer Spalte zu platzieren, in der AllowDBNull für das DataColumn-Objekts false
ist.
Die Zeile wurde gelöscht.
Beispiele
Die folgenden Beispiele zeigen, wie Sie Mithilfe der ItemArray -Eigenschaft Werte abrufen und festlegen.
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 abzurufen. Wenn Sie diese Eigenschaft zum Festlegen von Werten verwenden, muss das Array die gleiche Größe und Reihenfolge wie die Spaltenauflistung aufweisen. Das Übergeben null
von ItemArray gibt an, dass kein Wert angegeben wurde.
Benutzer können Ausnahmen im ColumnChanging Ereignis oder im RowChanging Ereignis generieren.