DataRow.ItemArray 屬性

定義

透過陣列取得或設定這個資料列的所有值。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()

屬性值

Object[]

類型為 Object 的陣列。An array of type Object.

例外狀況

陣列大於資料表中的資料行數目。The array is larger than the number of columns in the table.

陣列中的值與其在個別的 DataType 中之 DataColumn 不相符。A value in the array does not match its DataType in its respective DataColumn.

編輯中斷條件約束。An edit broke a constraint.

編輯嘗試變更唯讀資料行的值。An edit tried to change the value of a read-only column.

某項編輯作業嘗試將 null 值置於資料行中,而該資料行中 AllowDBNull 物件的 DataColumnfalseAn edit tried to put a null value in a column where AllowDBNull of the DataColumn object is false.

資料列已經刪除。The row has been deleted.

範例

下列範例示範如何使用 ItemArray 屬性來取得和設定值。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

備註

您可以使用這個屬性,透過陣列來設定或取得此資料列的值。You can use this property to set or get values for this row through an array. 如果您使用這個屬性來設定值,陣列必須與資料行集合具有相同的大小和順序。If you use this property to set values, the array must have the same size and ordering as the column collection. 傳遞 ItemArray 中的 null 表示未指定任何值。Passing null in the ItemArray indicates that no value was specified.

使用者可以在 ColumnChanging 事件或 RowChanging 事件中產生例外狀況。Users can generate exceptions in the ColumnChanging event or the RowChanging event.

適用於

另請參閱