DataRow.ItemArray Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define todos os valores para essa linha por meio de uma matriz.
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()
Valor da propriedade
Uma matriz do tipo Object.
Exceções
A matriz é maior que o número de colunas na tabela.
Um valor na matriz não corresponde ao DataType no DataColumn respectivo.
Uma edição violou uma restrição.
Uma edição tentou alterar o valor de uma coluna somente leitura.
Uma edição tentou colocar um valor nulo em uma coluna em que AllowDBNull do objeto DataColumn é false
.
A linha foi excluída.
Exemplos
Os exemplos a seguir mostram como obter e definir valores usando a ItemArray propriedade .
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
Comentários
Você pode usar essa propriedade para definir ou obter valores para essa linha por meio de uma matriz. Se você usar essa propriedade para definir valores, a matriz deverá ter o mesmo tamanho e ordenação que a coleção de colunas. Passar null
o ItemArray indica que nenhum valor foi especificado.
Os usuários podem gerar exceções no ColumnChanging evento ou no RowChanging evento .