Aracılığıyla paylaş


DataRow.ItemArray Özellik

Tanım

Bir dizi aracılığıyla bu satır için tüm değerleri alır veya ayarlar.

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()

Özellik Değeri

Object[]

türünde Objectbir dizi.

Özel durumlar

Dizi, tablodaki sütun sayısından daha büyük.

Dizideki bir değer kendi içindeki DataColumndeğeriyle DataType eşleşmiyor.

Düzenleme bir kısıtlamayı kırdı.

Düzenleme, salt okunur bir sütunun değerini değiştirmeye çalıştı.

Düzenleme, nesnesinin falseolduğu AllowDBNull bir sütuna null değer koymaya DataColumn çalıştı.

Örnekler

Aşağıdaki örneklerde özelliğini kullanarak değerlerin nasıl alınıp ayarlanacağı gösterilmektedir ItemArray .

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

Açıklamalar

Bu özelliği bir dizi aracılığıyla bu satır için değer ayarlamak veya almak için kullanabilirsiniz. Değerleri ayarlamak için bu özelliği kullanırsanız, dizinin sütun koleksiyonuyla aynı boyuta ve sıralamaya sahip olması gerekir. null değerinin ItemArray geçirilmesi, hiçbir değer belirtilmediğinden emin olduğunu gösterir.

Kullanıcılar olay veya RowChanging olayda ColumnChanging özel durumlar oluşturabilir.

Şunlara uygulanır

Ayrıca bkz.