DataRow.Item[String, DataRowVersion] DataRow.Item[String, DataRowVersion] DataRow.Item[String, DataRowVersion] DataRow.Item[String, DataRowVersion] Property

Definição

Sobrecargas

Item[DataColumn] Item[DataColumn] Item[DataColumn] Item[DataColumn]

Obtém ou define os dados armazenados no DataColumn especificado.Gets or sets the data stored in the specified DataColumn.

Item[Int32] Item[Int32] Item[Int32] Item[Int32]

Obtém ou define os dados armazenados na coluna especificada por índice.Gets or sets the data stored in the column specified by index.

Item[String] Item[String] Item[String] Item[String]

Obtém ou define os dados armazenados na coluna especificada por nome.Gets or sets the data stored in the column specified by name.

Item[DataColumn, DataRowVersion] Item[DataColumn, DataRowVersion] Item[DataColumn, DataRowVersion] Item[DataColumn, DataRowVersion]

Obtém a versão especificada de dados armazenados no DataColumn especificado.Gets the specified version of data stored in the specified DataColumn.

Item[Int32, DataRowVersion] Item[Int32, DataRowVersion] Item[Int32, DataRowVersion] Item[Int32, DataRowVersion]

Obtém os dados armazenados na coluna, especificados pelo índice e a versão dos dados a serem recuperados.Gets the data stored in the column, specified by index and version of the data to retrieve.

Item[String, DataRowVersion] Item[String, DataRowVersion] Item[String, DataRowVersion] Item[String, DataRowVersion]

Obtém a versão especificada de dados armazenados na coluna nomeada.Gets the specified version of data stored in the named column.

Item[DataColumn] Item[DataColumn] Item[DataColumn] Item[DataColumn]

Obtém ou define os dados armazenados no DataColumn especificado.Gets or sets the data stored in the specified DataColumn.

public:
 property System::Object ^ default[System::Data::DataColumn ^] { System::Object ^ get(System::Data::DataColumn ^ column); void set(System::Data::DataColumn ^ column, System::Object ^ value); };
public object this[System.Data.DataColumn column] { get; set; }
member this.Item(System.Data.DataColumn) : obj with get, set
Default Public Property Item(column As DataColumn) As Object

Parâmetros

column
DataColumn DataColumn DataColumn DataColumn

Um DataColumn que contém os dados.A DataColumn that contains the data.

Valor da propriedade

Um Object que contém os dados.An Object that contains the data.

Exceções

A coluna não pertence a essa tabela.The column does not belong to this table.

Ocorreu uma tentativa de definir um valor em uma linha excluída.An attempt was made to set a value on a deleted row.

Os tipos de dados do valor e a coluna não correspondem.The data types of the value and the column do not match.

Exemplos

Os exemplos a seguir demonstram o uso do Item[String, DataRowVersion] propriedade para obter e definir o valor de um índice de coluna específica.The following examples demonstrate the use of the Item[String, DataRowVersion] property to get and set the value of a specific column index. O primeiro exemplo obtém o valor da primeira coluna em qualquer linha que um usuário clica em um DataGrid controle.The first example gets the value of the first column in any row that a user clicks in a DataGrid control. O segundo define um valor passado como um argumento para o método.The second sets a value passed as an argument to the method.

Private Sub DataGrid1_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs)
    
    Dim dataGridTable As DataTable = _
        CType(DataGrid1.DataSource, DataTable)
    ' Set the current row using the RowNumber 
    ' property of the CurrentCell.
    Dim currentRow As DataRow = _
        dataGridTable.Rows(DataGrid1.CurrentCell.RowNumber)
    Dim column As DataColumn = dataGridTable.Columns(1)

    ' Get the value of the column 1 in the DataTable.
    label1.Text = currentRow(column).ToString()
End Sub
 
Private Sub SetDataRowValue( _
    ByVal grid As DataGrid, ByVal newVal As Object)

    ' Set the value of a column in the last row of a DataGrid.
    Dim table As DataTable = CType(grid.DataSource, DataTable)
    Dim row As DataRow = table.Rows(table.Rows.Count - 1)
    Dim column As DataColumn = table.Columns("FirstName")
    row(column)= newVal
End Sub

Comentários

Quando você define a propriedade, uma exceção será gerada se uma exceção ocorrer no evento ColumnChanging.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Se essa for uma edição imediata, consulte EndEdit para obter exceções que possam ser geradas.If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Item[Int32] Item[Int32] Item[Int32] Item[Int32]

Obtém ou define os dados armazenados na coluna especificada por índice.Gets or sets the data stored in the column specified by index.

public:
 property System::Object ^ default[int] { System::Object ^ get(int columnIndex); void set(int columnIndex, System::Object ^ value); };
public object this[int columnIndex] { get; set; }
member this.Item(int) : obj with get, set
Default Public Property Item(columnIndex As Integer) As Object

Parâmetros

columnIndex
Int32 Int32 Int32 Int32

O índice com base em zero da coluna.The zero-based index of the column.

Valor da propriedade

Um Object que contém os dados.An Object that contains the data.

Exceções

Ocorre quando você tenta definir um valor em uma linha excluída.Occurs when you try to set a value on a deleted row.

O argumento columnIndex está fora do intervalo.The columnIndex argument is out of range.

Ocorre quando você define o valor e o Type do novo valor não corresponde a DataType.Occurs when you set the value and the new value's Type does not match DataType.

Exemplos

Os exemplos a seguir demonstram o uso do Item[String, DataRowVersion] propriedade para obter e definir o valor de um índice de coluna específica.The following examples demonstrate the use of the Item[String, DataRowVersion] property to get and set the value of a specific column index. O primeiro exemplo obtém o valor da primeira coluna em qualquer linha que um usuário clica em um DataGrid controle.The first example gets the value of the first column in any row that a user clicks in a DataGrid control.

private void DataGrid1_Click(object sender, 
    System.EventArgs e)
{
    // Get the DataTable the grid is bound to.
    DataGrid thisGrid = (DataGrid) sender;
    DataTable table = (DataTable) thisGrid.DataSource;
    DataRow currentRow = 
        table.Rows[thisGrid.CurrentCell.RowNumber];

    // Get the value of the column 1 in the DataTable.
    Console.WriteLine(currentRow[1]);
    // You can also use the name of the column:
    // Console.WriteLine(currentRow["FirstName"])
}

private void SetDataRowValue(DataGrid grid, object newValue)
{
    // Set the value of the last column in the last row of a DataGrid.
    DataTable table;
    table = (DataTable) grid.DataSource;
    DataRow row;

    // Get last row
    row = (DataRow)table.Rows[table.Rows.Count-1];

    // Set value of last column
    row[table.Columns.Count-1] = newValue;
}
Private Sub DataGrid1_Click _
    (ByVal sender As System.Object, ByVal e As System.EventArgs)

    ' Get the DataTable the grid is bound to.
    Dim thisGrid As DataGrid = CType(sender, DataGrid)
    Dim table As DataTable = CType(thisGrid.DataSource, DataTable)
    Dim currentRow As DataRow = _
        table.Rows(thisGrid.CurrentCell.RowNumber)

    ' Get the value of the column 1 in the DataTable.
    Console.WriteLine(currentRow(1))
    ' You can also use the name of the column:
    ' Console.WriteLine(currentRow("FirstName"))
    End Sub

    Private Sub SetDataRowValue( _
        ByVal grid As DataGrid, ByVal newValue As Object)

    ' Set the value of the last column in the last row of a DataGrid.
    Dim table As DataTable
    table = CType(grid.DataSource, DataTable)
    Dim row As DataRow 
    row = table.Rows(table.Rows.Count-1)
    row(table.Columns.Count-1) = newValue
End Sub

Comentários

Quando você define a propriedade, uma exceção será gerada se uma exceção ocorrer no evento ColumnChanging.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Se esta for uma edição, consulte EndEdit para as exceções que podem ser geradas.If this is an edit, see EndEdit for the exceptions that can be generated.

Item[String] Item[String] Item[String] Item[String]

Obtém ou define os dados armazenados na coluna especificada por nome.Gets or sets the data stored in the column specified by name.

public:
 property System::Object ^ default[System::String ^] { System::Object ^ get(System::String ^ columnName); void set(System::String ^ columnName, System::Object ^ value); };
public object this[string columnName] { get; set; }
member this.Item(string) : obj with get, set
Default Public Property Item(columnName As String) As Object

Parâmetros

columnName
String String String String

O nome da coluna.The name of the column.

Valor da propriedade

Um Object que contém os dados.An Object that contains the data.

Exceções

A coluna especificada por columnName não pode ser encontrada.The column specified by columnName cannot be found.

Ocorre quando você tenta definir um valor em uma linha excluída.Occurs when you try to set a value on a deleted row.

Ocorre quando você define um valor e seu Type não corresponde a DataType.Occurs when you set a value and its Type does not match DataType.

Ocorre quando você tentar inserir um valor nulo em uma coluna em que AllowDBNull está definido como false.Occurs when you try to insert a null value into a column where AllowDBNull is set to false.

Exemplos

Os exemplos a seguir demonstram o uso do Item[String, DataRowVersion] propriedade para obter e definir o valor de um índice de coluna específica.The following examples demonstrate the use of the Item[String, DataRowVersion] property to get and set the value of a specific column index. O primeiro exemplo obtém o valor da primeira coluna em qualquer linha que um usuário clica em um DataGrid controle.The first example gets the value of the first column in any row that a user clicks in a DataGrid control. O segundo define um valor passado como um argumento para o método.The second sets a value passed as an argument to the method.

private void DataGrid1_Click(
    object sender, System.EventArgs e)
{
    // Get the DataTable the grid is bound to.
    DataGrid thisGrid = (DataGrid) sender;
    DataTable table = (DataTable) thisGrid.DataSource;
    DataRow currentRow = 
        table.Rows[thisGrid.CurrentCell.RowNumber];

    // Get the value of the column 1 in the DataTable.
    Console.WriteLine(currentRow["FirstName"]);
    // You can also use the index:
    // Console.WriteLine(currentRow[1]);
}

private void SetDataRowValue(
    DataGrid grid, object newValue)
{
    // Set the value of the first column in 
    // the last row of a DataGrid.
    DataTable table = (DataTable) grid.DataSource;
    DataRow row = table.Rows[table.Rows.Count-1];
    row["FirstName"] = newValue;
}
Private Sub DataGrid1_Click( _
    sender As Object, e As System.EventArgs)
     
    ' Get the DataTable the grid is bound to.
    Dim thisGrid As DataGrid = CType(sender, DataGrid)
    Dim table As DataTable = _
        CType(thisGrid.DataSource, DataTable)
    Dim currentRow As DataRow = _
        table.Rows(thisGrid.CurrentCell.RowNumber)

    ' Get the value of the column 1 in the DataTable.
    Console.WriteLine(currentRow("FirstName"))
    ' You can also use the index:
    ' Console.WriteLine(currentRow(1).ToString())
End Sub
    
Private Sub SetDataRowValue( _
    grid As DataGrid, newValue As Object)
    ' Set the value of the first column in 
    ' the last row of a DataGrid.
    Dim table As DataTable = _
        CType(grid.DataSource, DataTable)
    Dim row As DataRow
    row = table.Rows((table.Rows.Count - 1))
    row("FirstName") = newValue
End Sub

Comentários

Quando você define a propriedade, uma exceção será gerada se uma exceção ocorrer no evento ColumnChanging.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Se essa for uma edição imediata, consulte EndEdit para obter exceções que possam ser geradas.If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Item[DataColumn, DataRowVersion] Item[DataColumn, DataRowVersion] Item[DataColumn, DataRowVersion] Item[DataColumn, DataRowVersion]

Obtém a versão especificada de dados armazenados no DataColumn especificado.Gets the specified version of data stored in the specified DataColumn.

public:
 property System::Object ^ default[System::Data::DataColumn ^, System::Data::DataRowVersion] { System::Object ^ get(System::Data::DataColumn ^ column, System::Data::DataRowVersion version); };
public object this[System.Data.DataColumn column, System.Data.DataRowVersion version] { get; }
member this.Item(System.Data.DataColumn * System.Data.DataRowVersion) : obj
Default Public ReadOnly Property Item(column As DataColumn, version As DataRowVersion) As Object

Parâmetros

column
DataColumn DataColumn DataColumn DataColumn

Um DataColumn que contém informações sobre a coluna.A DataColumn that contains information about the column.

version
DataRowVersion DataRowVersion DataRowVersion DataRowVersion

Um dos valores DataRowVersion que especifica a versão de linha que você deseja.One of the DataRowVersion values that specifies the row version that you want. Os valores possíveis são Default, Original, Current e Proposed.Possible values are Default, Original, Current, and Proposed.

Valor da propriedade

Um Object que contém os dados.An Object that contains the data.

Exceções

A coluna não pertence à tabela.The column does not belong to the table.

O argumento column contém null.The column argument contains null.

A linha não tem esta versão de dados.The row does not have this version of data.

Exemplos

O exemplo a seguir obtém o valor atual de uma célula clicada no DataGrid controle.The following example gets the current value of a clicked cell in the DataGrid control.

private void DataGrid1_Click(object sender, 
    System.EventArgs e) 
{
    DataTable dataGridTable = 
        (DataTable)DataGrid1.DataSource;

    // Set the current row using the RowNumber 
    // property of the CurrentCell.
    DataRow currentRow = dataGridTable.Rows[DataGrid1.CurrentCell.RowNumber];
    DataColumn column = dataGridTable.Columns[1];

    // Get the value of the column 1 in the DataTable.
    Console.WriteLine(currentRow[column, DataRowVersion.Current]);
}
Private Sub DataGrid1_Click _
    (ByVal sender As System.Object, ByVal e As System.EventArgs)

    Dim dataGridTable As DataTable = _
        CType(DataGrid1.DataSource, DataTable)

    ' Set the current row using the RowNumber 
    ' property of the CurrentCell.
    Dim currentRow As DataRow = dataGridTable.Rows( _
        DataGrid1.CurrentRowIndex)
    Dim column As DataColumn = dataGridTable.Columns(1)

    ' Get the value of the column 1 in the DataTable.
    label1.Text = currentRow(column, _
        DataRowVersion.Current).ToString()
End Sub

Comentários

O version não deve ser confundido com o RowState propriedade.The version should not be confused with the RowState property. O version argumento descreve o estado dos dados que contém a coluna em relação ao valor original da coluna.The version argument describes the state of the data that is contained by the column relative to the column's original value.

Quando você define a propriedade, uma exceção será gerada se uma exceção ocorrer no evento ColumnChanging.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Se essa for uma edição imediata, consulte EndEdit para obter exceções que possam ser geradas.If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Veja também

Item[Int32, DataRowVersion] Item[Int32, DataRowVersion] Item[Int32, DataRowVersion] Item[Int32, DataRowVersion]

Obtém os dados armazenados na coluna, especificados pelo índice e a versão dos dados a serem recuperados.Gets the data stored in the column, specified by index and version of the data to retrieve.

public:
 property System::Object ^ default[int, System::Data::DataRowVersion] { System::Object ^ get(int columnIndex, System::Data::DataRowVersion version); };
public object this[int columnIndex, System.Data.DataRowVersion version] { get; }
member this.Item(int * System.Data.DataRowVersion) : obj
Default Public ReadOnly Property Item(columnIndex As Integer, version As DataRowVersion) As Object

Parâmetros

columnIndex
Int32 Int32 Int32 Int32

O índice com base em zero da coluna.The zero-based index of the column.

version
DataRowVersion DataRowVersion DataRowVersion DataRowVersion

Um dos valores DataRowVersion que especifica a versão de linha que você deseja.One of the DataRowVersion values that specifies the row version that you want. Os valores possíveis são Default, Original, Current e Proposed.Possible values are Default, Original, Current, and Proposed.

Valor da propriedade

Um Object que contém os dados.An Object that contains the data.

Exceções

O argumento columnIndex está fora do intervalo.The columnIndex argument is out of range.

Os tipos de dados do valor e a coluna não correspondem.The data types of the value and the column do not match.

A linha não tem esta versão de dados.The row does not have this version of data.

Ocorreu uma tentativa de definir um valor em uma linha excluída.An attempt was made to set a value on a deleted row.

Exemplos

O exemplo a seguir obtém o valor atual de uma coluna por meio de Item[String, DataRowVersion] propriedade do DataRow objeto.The following example gets the current value of a column through the Item[String, DataRowVersion] property of the DataRow object.

Private Sub DataGrid1_Click _
    (ByVal sender As System.Object, ByVal e As System.EventArgs)
    
    ' Set the current row using the RowNumber property of the CurrentCell.
    Dim currentRow As DataRow = CType(DataGrid1.DataSource, DataTable). _
       Rows(DataGrid1.CurrentCell.RowNumber)

    ' Get the value of the column 1 in the DataTable.
    label1.Text = currentRow(1, DataRowVersion.Current).ToString()
End Sub

Comentários

Você só pode criar ou atualizar uma linha depois de chamar o BeginEdit método; da mesma forma, o EndEdit método deve ser chamado para confirmar a edição.You can only create or update a row after you call the BeginEdit method; similarly, the EndEdit method must be called to commit the edit. Depois de chamar o EndEdit método, e antes de chamar o AcceptChanges proposta de representações internas do original e novo método, os valores são armazenados.After you call the EndEdit method, and before you call the AcceptChanges method, internal representations of the original and new proposed values are stored. Portanto, até que você chame o AcceptChanges, você pode usar o version argumento para especificar qual versão do valor de uma coluna você precisa, ou o DataRowVersion.Original ou DataRowVersion.Proposed.Therefore, until you call the AcceptChanges, you can use the version argument to specify which version of a column's value you need, either the DataRowVersion.Original or DataRowVersion.Proposed. No entanto, assim como você chamar o AcceptChanges método, a versão da coluna será revertido para DataRowVersion.Original.However, as soon as you call the AcceptChanges method, the version of the column reverts to DataRowVersion.Original. Se a linha for nova, você também pode passar DataRowVersion.Default para o parâmetro para recuperar o valor padrão da coluna.If the row is new, you can also pass DataRowVersion.Default for the parameter to retrieve the column's default value. Ao passar DataRowVersion.Current, a propriedade retorna o atual valor, qualquer que seja sua versão.When passing DataRowVersion.Current, the property returns the current value, whatever its version may be.

Observação

O BeginEdit método é chamado implicitamente quando você alterar o valor de um controle associado a dados ou quando um DataRow objeto é adicionado para o DataRowCollection; o EndEdit método é chamado implicitamente quando você chama os métodos a seguir: o AcceptChanges método da DataRow objeto, o AcceptChanges método o DataTable objeto, ou o CancelEdit método.The BeginEdit method is called implicitly when you change the value of a data-bound control or when a DataRow object is added to the DataRowCollection; the EndEdit method is called implicitly when you call the following methods: the AcceptChanges method of the DataRow object, the AcceptChanges method of the DataTable object, or the CancelEdit method.

Por outro lado, o DataRowVersion enumeração Current retorna a versão dos dados após o EndEdit método foi chamado.By contrast, the DataRowVersion enumeration Current returns the version of the data after the EndEdit method has been called.

O version argumento não deve ser confundido com o RowState propriedade.The version argument should not be confused with the RowState property. O version argumento descreve o estado dos dados que contém a coluna em relação ao valor original da coluna.The version argument describes the state of the data that is contained by the column relative to the column's original value. O RowState propriedade descreve o estado da linha inteira em relação ao seu pai DataTable.The RowState property describes the state of the whole row relative to its parent DataTable.

Quando você define a propriedade, uma exceção será gerada se uma exceção ocorrer no evento ColumnChanging.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Se essa for uma edição imediata, consulte EndEdit para obter exceções que possam ser geradas.If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Item[String, DataRowVersion] Item[String, DataRowVersion] Item[String, DataRowVersion] Item[String, DataRowVersion]

Obtém a versão especificada de dados armazenados na coluna nomeada.Gets the specified version of data stored in the named column.

public:
 property System::Object ^ default[System::String ^, System::Data::DataRowVersion] { System::Object ^ get(System::String ^ columnName, System::Data::DataRowVersion version); };
public object this[string columnName, System.Data.DataRowVersion version] { get; }
member this.Item(string * System.Data.DataRowVersion) : obj
Default Public ReadOnly Property Item(columnName As String, version As DataRowVersion) As Object

Parâmetros

columnName
String String String String

O nome da coluna.The name of the column.

version
DataRowVersion DataRowVersion DataRowVersion DataRowVersion

Um dos valores DataRowVersion que especifica a versão de linha que você deseja.One of the DataRowVersion values that specifies the row version that you want. Os valores possíveis são Default, Original, Current e Proposed.Possible values are Default, Original, Current, and Proposed.

Valor da propriedade

Um Object que contém os dados.An Object that contains the data.

Exceções

A coluna especificada por columnName não pode ser encontrada.The column specified by columnName cannot be found.

Os tipos de dados do valor e a coluna não correspondem.The data types of the value and the column do not match.

A linha não tem esta versão de dados.The row does not have this version of data.

Exemplos

O exemplo a seguir obtém a versão atual dos dados em uma célula clicada de um DataGrid controle.The following example gets the current version of data at a clicked cell of a DataGrid control.

private void DataGrid1_Click(object sender, System.EventArgs e)
{
    // Set the current row using the RowNumber 
    // property of the CurrentCell.
    DataRow currentRow =
        ((DataTable)(DataGrid1.DataSource)).
        Rows[DataGrid1.CurrentCell.RowNumber];

    // Print the current value of the column named "FirstName."
    Console.WriteLine(currentRow["FirstName", 
        DataRowVersion.Current]);
}
Private Sub DataGrid1_Click _
    (ByVal sender As System.Object, ByVal e As System.EventArgs)
    
    ' Set the current row using the RowNumber property 
    ' of the CurrentCell.
    Dim currentRow As DataRow = _
        CType(DataGrid1.DataSource, DataTable). _
        Rows(DataGrid1.CurrentCell.RowNumber)

    ' Print the current value of the column named "FirstName."
    Console.WriteLine(currentRow("FirstName", _
        DataRowVersion.Current).ToString())
End Sub

Comentários

A versão não deve ser confundida com o RowState propriedade.The version should not be confused with the RowState property. O version argumento descreve o estado dos dados que contém a coluna em relação ao valor original da coluna.The version argument describes the state of the data that is contained by the column relative to the column's original value. O RowState propriedade descreve o estado da linha inteira em relação ao seu pai DataTable.The RowState property describes the state of the whole row relative to its parent DataTable.

Quando você define a propriedade, uma exceção será gerada se uma exceção ocorrer no evento ColumnChanging.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

Se essa for uma edição imediata, consulte EndEdit para obter exceções que possam ser geradas.If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Veja também

Aplica-se a