DataRow.Item[String, DataRowVersion] Propriété

Définition

Obtient ou définit les données stockées dans une colonne spécifiée.Gets or sets data stored in a specified column.

Surcharges

Item[DataColumn]

Obtient ou définit les données stockées dans le DataColumn spécifié.Gets or sets the data stored in the specified DataColumn.

Item[Int32]

Obtient ou définit les données stockées dans la colonne spécifiée par l'index.Gets or sets the data stored in the column specified by index.

Item[String]

Obtient ou définit les données stockées dans la colonne spécifiée par son nom.Gets or sets the data stored in the column specified by name.

Item[DataColumn, DataRowVersion]

Obtient la version spécifiée des données stockées dans le DataColumn spécifié.Gets the specified version of data stored in the specified DataColumn.

Item[Int32, DataRowVersion]

Obtient les données stockées dans la colonne, spécifiées par l'index et la version des données à récupérer.Gets the data stored in the column, specified by index and version of the data to retrieve.

Item[String, DataRowVersion]

Obtient la version spécifiée des données stockées dans la colonne nommée.Gets the specified version of data stored in the named column.

Item[DataColumn]

Obtient ou définit les données stockées dans le DataColumn spécifié.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

Paramètres

column
DataColumn

DataColumn qui contient les données.A DataColumn that contains the data.

Valeur de propriété

Objet Object qui contient les données.An Object that contains the data.

Exceptions

La colonne n'appartient pas à cette table.The column does not belong to this table.

column a la valeur null.The column is null.

Une tentative de définition d'une valeur sur une ligne supprimée a été effectuée.An attempt was made to set a value on a deleted row.

Les types de données de la valeur et de la colonne ne correspondent pas.The data types of the value and the column do not match.

Exemples

Les exemples suivants illustrent l’utilisation de Item[String, DataRowVersion] la propriété pour obtenir et définir la valeur d’un index de colonne spécifique.The following examples demonstrate the use of the Item[String, DataRowVersion] property to get and set the value of a specific column index. Le premier exemple obtient la valeur de la première colonne d’une ligne sur laquelle un utilisateur clique DataGrid dans un contrôle.The first example gets the value of the first column in any row that a user clicks in a DataGrid control. Le deuxième définit une valeur passée comme argument à la méthode.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

Remarques

Lorsque vous définissez la propriété, une exception est générée si une exception se produit dans ColumnChanging l’événement.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

S’il s’agit d’une modification immédiate EndEdit , consultez pour connaître les exceptions qui peuvent être générées.If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Item[Int32]

Obtient ou définit les données stockées dans la colonne spécifiée par l'index.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

Paramètres

columnIndex
Int32

Index de base zéro de la colonne.The zero-based index of the column.

Valeur de propriété

Objet Object qui contient les données.An Object that contains the data.

Exceptions

Se produit lorsque vous essayez de définir une valeur dans une ligne supprimée.Occurs when you try to set a value on a deleted row.

L'argument columnIndex est hors limites.The columnIndex argument is out of range.

Se produit lorsque vous définissez la valeur et que le Type de la nouvelle valeur ne correspond pas à DataType.Occurs when you set the value and the new value's Type does not match DataType.

Exemples

Les exemples suivants illustrent l’utilisation de Item[String, DataRowVersion] la propriété pour obtenir et définir la valeur d’un index de colonne spécifique.The following examples demonstrate the use of the Item[String, DataRowVersion] property to get and set the value of a specific column index. Le premier exemple obtient la valeur de la première colonne d’une ligne sur laquelle un utilisateur clique DataGrid dans un contrôle.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

Remarques

Lorsque vous définissez la propriété, une exception est générée si une exception se produit dans ColumnChanging l’événement.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

S’il s’agit d’une modification EndEdit , consultez pour les exceptions qui peuvent être générées.If this is an edit, see EndEdit for the exceptions that can be generated.

Item[String]

Obtient ou définit les données stockées dans la colonne spécifiée par son nom.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

Paramètres

columnName
String

Nom de la colonne.The name of the column.

Valeur de propriété

Objet Object qui contient les données.An Object that contains the data.

Exceptions

La colonne spécifiée par columnName est introuvable.The column specified by columnName cannot be found.

Se produit lorsque vous essayez de définir une valeur dans une ligne supprimée.Occurs when you try to set a value on a deleted row.

Se produit lorsque vous définissez une valeur et que son Type ne correspond pas à DataType.Occurs when you set a value and its Type does not match DataType.

Se produit lorsque vous tentez d'insérer une valeur NULL dans une colonne où AllowDBNull a la valeur false.Occurs when you try to insert a null value into a column where AllowDBNull is set to false.

Exemples

Les exemples suivants illustrent l’utilisation de Item[String, DataRowVersion] la propriété pour obtenir et définir la valeur d’un index de colonne spécifique.The following examples demonstrate the use of the Item[String, DataRowVersion] property to get and set the value of a specific column index. Le premier exemple obtient la valeur de la première colonne d’une ligne sur laquelle un utilisateur clique DataGrid dans un contrôle.The first example gets the value of the first column in any row that a user clicks in a DataGrid control. Le deuxième définit une valeur passée comme argument à la méthode.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

Remarques

Lorsque vous définissez la propriété, une exception est générée si une exception se produit dans ColumnChanging l’événement.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

S’il s’agit d’une modification immédiate EndEdit , consultez pour connaître les exceptions qui peuvent être générées.If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Item[DataColumn, DataRowVersion]

Obtient la version spécifiée des données stockées dans le DataColumn spécifié.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

Paramètres

column
DataColumn

DataColumn qui contient des informations sur la colonne.A DataColumn that contains information about the column.

version
DataRowVersion

Une des valeurs DataRowVersion qui spécifie la version de ligne souhaitée.One of the DataRowVersion values that specifies the row version that you want. Les valeurs possibles sont Default, Original, Current et Proposed.Possible values are Default, Original, Current, and Proposed.

Valeur de propriété

Objet Object qui contient les données.An Object that contains the data.

Exceptions

La colonne n'appartient pas à la table.The column does not belong to the table.

L'argument column contient une valeur null.The column argument contains null.

La ligne ne possède pas cette version des données.The row does not have this version of data.

Exemples

L’exemple suivant obtient la valeur actuelle d’une cellule sur laquelle l’utilisateur DataGrid a cliqué dans le contrôle.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

Remarques

La version propriété ne doit pas être confondue avec la RowState propriété.The version should not be confused with the RowState property. L' version argument décrit l’état des données contenues dans la colonne par rapport à la valeur d’origine de la colonne.The version argument describes the state of the data that is contained by the column relative to the column's original value.

Lorsque vous définissez la propriété, une exception est générée si une exception se produit dans ColumnChanging l’événement.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

S’il s’agit d’une modification immédiate EndEdit , consultez pour connaître les exceptions qui peuvent être générées.If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Voir aussi

Item[Int32, DataRowVersion]

Obtient les données stockées dans la colonne, spécifiées par l'index et la version des données à récupérer.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

Paramètres

columnIndex
Int32

Index de base zéro de la colonne.The zero-based index of the column.

version
DataRowVersion

Une des valeurs DataRowVersion qui spécifie la version de ligne souhaitée.One of the DataRowVersion values that specifies the row version that you want. Les valeurs possibles sont Default, Original, Current et Proposed.Possible values are Default, Original, Current, and Proposed.

Valeur de propriété

Objet Object qui contient les données.An Object that contains the data.

Exceptions

L'argument columnIndex est hors limites.The columnIndex argument is out of range.

Les types de données de la valeur et de la colonne ne correspondent pas.The data types of the value and the column do not match.

La ligne ne possède pas cette version des données.The row does not have this version of data.

Une tentative de définition d'une valeur sur une ligne supprimée a été effectuée.An attempt was made to set a value on a deleted row.

Exemples

L’exemple suivant obtient la valeur actuelle d’une colonne via la Item[String, DataRowVersion] propriété de l' DataRow objet.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

Remarques

Vous pouvez uniquement créer ou mettre à jour une ligne après avoir BeginEdit appelé la méthode; de la EndEdit même façon, la méthode doit être appelée pour valider la modification.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. Une fois que vous EndEdit avez appelé la méthode et avant d' AcceptChanges appeler la méthode, les représentations internes des valeurs proposées d’origine et de nouvelles valeurs proposées sont stockées.After you call the EndEdit method, and before you call the AcceptChanges method, internal representations of the original and new proposed values are stored. Par conséquent, tant que vous AcceptChangesn’avez pas appelé, version vous pouvez utiliser l’argument pour spécifier la version de la valeur de colonne dont DataRowVersion.Original vous DataRowVersion.Proposedavez besoin, ou.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. Toutefois, dès que vous appelez la AcceptChanges méthode, la version de la colonne revient à. DataRowVersion.OriginalHowever, as soon as you call the AcceptChanges method, the version of the column reverts to DataRowVersion.Original. Si la ligne est nouvelle, vous pouvez également passer DataRowVersion.Default le paramètre pour récupérer la valeur par défaut de la colonne.If the row is new, you can also pass DataRowVersion.Default for the parameter to retrieve the column's default value. Lors du DataRowVersion.Currentpassage, la propriété retourne la valeur actuelle, quelle que soit sa version.When passing DataRowVersion.Current, the property returns the current value, whatever its version may be.

Notes

La BeginEdit méthode est appelée implicitement lorsque vous modifiez la valeur d’un contrôle lié aux données ou lorsqu’un DataRow DataRowCollectionobjet est ajouté à. la EndEdit méthode est AcceptChanges appelée implicitement lorsque vous appelez les méthodes suivantes: méthode de DataRow l’objet AcceptChanges , de la méthode de DataTable l’objet ou de CancelEdit la méthode.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.

En revanche, l' DataRowVersion énumération Current retourne la version des données après l' EndEdit appel de la méthode.By contrast, the DataRowVersion enumeration Current returns the version of the data after the EndEdit method has been called.

L' version argument ne doit pas être confondu avec RowState la propriété.The version argument should not be confused with the RowState property. L' version argument décrit l’état des données contenues dans la colonne par rapport à la valeur d’origine de la colonne.The version argument describes the state of the data that is contained by the column relative to the column's original value. La RowState propriété décrit l’état de la ligne entière par rapport à son DataTableparent.The RowState property describes the state of the whole row relative to its parent DataTable.

Lorsque vous définissez la propriété, une exception est générée si une exception se produit dans ColumnChanging l’événement.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

S’il s’agit d’une modification immédiate EndEdit , consultez pour connaître les exceptions qui peuvent être générées.If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Item[String, DataRowVersion]

Obtient la version spécifiée des données stockées dans la colonne nommée.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

Paramètres

columnName
String

Nom de la colonne.The name of the column.

version
DataRowVersion

Une des valeurs DataRowVersion qui spécifie la version de ligne souhaitée.One of the DataRowVersion values that specifies the row version that you want. Les valeurs possibles sont Default, Original, Current et Proposed.Possible values are Default, Original, Current, and Proposed.

Valeur de propriété

Objet Object qui contient les données.An Object that contains the data.

Exceptions

La colonne spécifiée par columnName est introuvable.The column specified by columnName cannot be found.

Les types de données de la valeur et de la colonne ne correspondent pas.The data types of the value and the column do not match.

La ligne ne possède pas cette version des données.The row does not have this version of data.

La ligne a été supprimée.The row was deleted.

Exemples

L’exemple suivant obtient la version actuelle des données d’une cellule sur laquelle l’utilisateur DataGrid clique dans un contrôle.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

Remarques

La version ne doit pas être confondue avec la RowState propriété.The version should not be confused with the RowState property. L' version argument décrit l’état des données contenues dans la colonne par rapport à la valeur d’origine de la colonne.The version argument describes the state of the data that is contained by the column relative to the column's original value. La RowState propriété décrit l’état de la ligne entière par rapport à son DataTableparent.The RowState property describes the state of the whole row relative to its parent DataTable.

Lorsque vous définissez la propriété, une exception est générée si une exception se produit dans ColumnChanging l’événement.When you set the property, an exception is generated if an exception occurs in the ColumnChanging event.

S’il s’agit d’une modification immédiate EndEdit , consultez pour connaître les exceptions qui peuvent être générées.If this is an immediate edit, see EndEdit for the exceptions that can be generated.

Voir aussi

S’applique à