L'objet DataTable fournit une série d'événements pouvant être traités par une application. Le tableau suivant décrit les événements DataTable.
| Événement | Description |
|---|---|
| ColumnChanged | Se produit quand une valeur a été insérée dans une colonne avec succès. |
| ColumnChanging | Se produit quand une valeur a été proposée pour une colonne. |
| RowChanged | Se produit après qu'une ligne de la table a été modifiée avec succès. |
| RowChanging | Se produit quand une ligne de la table est en cours de modification. |
| RowDeleted | Se produit après qu'une ligne de la table a été marquée comme Deleted. |
| RowDeleting | Se produit avant qu'une ligne de la table soit marquée comme Deleted. |
L'exemple suivant crée quatre événements : OnColumnChanged, OnColumnChanging, OnRowChanged et OnRowChanging. Chacun de ces événements se produit lors de la modification d'une ligne ou d'une colonne.
AddHandler workTable.ColumnChanged, New _ DataColumnChangeEventHandler(AddressOf OnColumnChanged) AddHandler workTable.ColumnChanging, New _ DataColumnChangeEventHandler(AddressOf OnColumnChanging) AddHandler workTable.RowChanged, New _ DataRowChangeEventHandler(AddressOf OnRowChanged) AddHandler workTable.RowChanging, New _ DataRowChangeEventHandler(AddressOf OnRowChanging) Private Shared Sub OnColumnChanged( _ sender As Object, args As DataColumnChangeEventargs) Console.Write(" ColumnChanged: ") Console.Write(args.Column.ColumnName & " changed to '" & _ args.ProposedValue.ToString() & "'" & vbCrLf) End Sub Private Shared Sub OnColumnChanging( _ sender As Object, args As DataColumnChangeEventargs) Console.Write("ColumnChanging: ") Console.Write(args.Column.ColumnName & " equals '" & _ args.Row(args.Column).ToString() & _ "', changing to '" & args.ProposedValue.ToString() & "'" & vbCrLf) End Sub Private Shared Sub OnRowChanging( _ sender As Object, args As DataRowChangeEventargs) If args.Action <> DataRowAction.Nothing Then Dim actionStr As String actionStr = System.Enum.GetName(args.Action.GetType(), args.Action) Console.WriteLine(" RowChanging: Action = " & actionStr & ", _ CustID = " & args.Row("CustID").ToString()) End If End Sub Private Shared Sub OnRowChanged( _ sender As Object, args As DataRowChangeEventargs) If args.Action <> DataRowAction.Nothing Then Dim actionStr As String actionStr = System.Enum.GetName(args.Action.GetType(), args.Action) Console.WriteLine(" RowChanged: Action = " & actionStr & ", _ CustID = " & args.Row("CustID").ToString()) End If End Sub
workTable.ColumnChanged += new DataColumnChangeEventHandler(OnColumnChanged); workTable.ColumnChanging += new DataColumnChangeEventHandler(OnColumnChanging); workTable.RowChanged += new DataRowChangeEventHandler(OnRowChanged); workTable.RowChanging += new DataRowChangeEventHandler(OnRowChanging); protected static void OnColumnChanged( object sender, DataColumnChangeEventArgs args) { Console.Write(" ColumnChanged: "); Console.Write(args.Column.ColumnName + " changed to '" + args.ProposedValue + "'\n"); } protected static void OnColumnChanging( object sender, DataColumnChangeEventArgs args) { Console.Write("ColumnChanging: "); Console.Write(args.Column.ColumnName + " equals '" + args.Row[args.Column] + "', changing to '" + args.ProposedValue + "'\n"); } protected static void OnRowChanging( object sender, DataRowChangeEventArgs args) { if (args.Action != DataRowAction.Nothing) Console.WriteLine(" RowChanging: Action = " + args.Action + ", CustID = " + args.Row["CustID"]); } protected static void OnRowChanged( object sender, DataRowChangeEventArgs args) { if (args.Action != DataRowAction.Nothing) Console.WriteLine(" RowChanged: Action = " + args.Action + ", CustID = " + args.Row["CustID"]); }
Outils (masquer)
S'enregistrer
Liste des Membres
Qui est en ligne?
FAQ