Comment : rechercher les lignes modifiées
Lorsque des modifications sont apportées à des enregistrements dans un groupe de données, les informations relatives à ces modifications sont stockées jusqu'à ce que vous les validiez. Elles sont validées en appelant la méthode AcceptChanges d'un groupe de données, d'une table de données ou encore en appelant la méthode Update d'un TableAdapter ou d'un adaptateur de données.
Le suivi des modifications de chaque ligne de données s'effectue de deux manières :
Chaque ligne de données contient des informations concernant son RowState (par exemple, Added, Modified, Deleted, Unchanged).
Chaque ligne de données modifiée contient plusieurs versions de cette ligne (DataRowVersion) auxquelles vous pouvez accéder : l'original (avant modification) et les versions actuelles (après modification). Pendant l'intervalle où la modification est en attente (la période pendant laquelle vous pouvez répondre à l'événement RowChanging), une troisième version (la version proposée) est également disponible. Pour plus d'informations, consultez Comment : obtenir des versions spécifiques d'un DataRow.
Détermination de l'existence de lignes modifiées
La méthode HasChanges d'un groupe de données retourne la valeur true si des modifications ont été apportées au groupe de données. Après avoir déterminé qu'il existe des lignes modifiées, vous pouvez appeler la méthode GetChanges d'un DataSet ou d'un DataTable pour retourner un jeu de lignes modifiées. Pour plus d'informations, consultez Comment : récupérer des lignes modifiées.
Pour déterminer si des lignes ont été modifiées
Appelez la méthode HasChanges d'un groupe de données pour vérifier la présence de lignes modifiées.
L'exemple suivant montre comment vérifier la valeur de retour de la méthode HasChanges afin de déterminer si le groupe de données appelé NorthwindDataset1 contient des lignes modifiées.
If NorthwindDataSet1.HasChanges() Then ' Changed rows were detected, add appropriate code. Else ' No changed rows were detected, add appropriate code. End If
if (northwindDataSet1.HasChanges()) { // Changed rows were detected, add appropriate code. } else { // No changed rows were detected, add appropriate code. }
Détermination du type de modifications
Vous pouvez également vérifier le type de modifications apportées dans un groupe de données en passant une valeur de l'énumération DataRowState à la méthode HasChanges.
Pour déterminer le type de modifications apportées à une ligne
Passez une valeur DataRowState à la méthode HasChanges.
L'exemple suivant montre comment vérifier si des lignes ont été ajoutées au groupe de données appelé NorthwindDataset1 :
If NorthwindDataSet1.HasChanges(DataRowState.Added) Then ' New rows have been added to the dataset, add appropriate code. Else ' No new rows have been added to the dataset, add appropriate code. End If
if (northwindDataSet1.HasChanges(DataRowState.Added)) { // New rows have been added to the dataset, add appropriate code. } else { // No new rows have been added to the dataset, add appropriate code. }
Voir aussi
Concepts
Modification des données dans votre application
Liaison de contrôles Windows Forms à des données dans Visual Studio
Préparation de votre application pour recevoir des données
Extraction de données dans votre application
Liaison de contrôles à des données dans Visual Studio