DataRow.ItemArray Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lekéri vagy beállítja a sor összes értékét egy tömbön keresztül.
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()
Tulajdonság értéke
Típustömb Object.
Kivételek
A tömb nagyobb, mint a tábla oszlopainak száma.
A tömb egyik értéke nem egyezik meg a DataType saját DataColumnértékével.
Egy szerkesztés megszakított egy kényszert.
Egy szerkesztés egy írásvédett oszlop értékét próbálta módosítani.
Egy szerkesztés null értéket próbált elhelyezni egy oszlopban, ahol AllowDBNull az DataColumn objektum található false.
A sor törölve lett.
Példák
Az alábbi példák bemutatják, hogyan kérhet le és állíthat be értékeket a ItemArray tulajdonság használatával.
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
Megjegyzések
Ezzel a tulajdonságot használhatja a sor értékeinek tömbön keresztüli beállítására vagy lekérésére. Ha ezt a tulajdonságot használja az értékek beállításához, a tömbnek ugyanolyan méretűnek és rendezettnek kell lennie, mint az oszlopgyűjteménynek.
null
ItemArray A megadott érték azt jelzi, hogy nincs megadva érték.
A felhasználók kivételeket hozhatnak létre az ColumnChanging eseményben vagy az RowChanging eseményben.