ConstraintCollection.CollectionChanged Evento
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Viene generato ogni volta che la classe ConstraintCollection viene modificata in seguito all'aggiunta o alla rimozione di oggetti Constraint.
public:
event System::ComponentModel::CollectionChangeEventHandler ^ CollectionChanged;
public event System.ComponentModel.CollectionChangeEventHandler? CollectionChanged;
public event System.ComponentModel.CollectionChangeEventHandler CollectionChanged;
member this.CollectionChanged : System.ComponentModel.CollectionChangeEventHandler
Public Custom Event CollectionChanged As CollectionChangeEventHandler
Tipo evento
Esempio
Nell'esempio seguente viene illustrato come usare l'evento CollectionChanged .
private static void ConstraintCollectionChanged()
{
// Demonstrate ConstraintCollection.CollectionChanged event.
try
{
// Create Customers table.
DataTable customersTable = new DataTable("Customers");
customersTable.Columns.Add("id", typeof(int));
customersTable.Columns.Add("Name", typeof(string));
customersTable.Constraints.CollectionChanged +=
new System.ComponentModel.CollectionChangeEventHandler(
Collection_Changed);
// Create Orders table.
DataTable ordersTable = new DataTable("Orders");
ordersTable.Columns.Add("CustID", typeof(int));
ordersTable.Columns.Add("CustName", typeof(string));
ordersTable.Constraints.CollectionChanged +=
new System.ComponentModel.CollectionChangeEventHandler(
Collection_Changed);
// Create unique constraint.
UniqueConstraint constraint = new UniqueConstraint(
customersTable.Columns["id"]);
customersTable.Constraints.Add(constraint);
// Create unique constraint and specify as primary key.
ordersTable.Constraints.Add(
"pKey", ordersTable.Columns["CustID"], true);
// Remove constraints.
customersTable.Constraints.RemoveAt(0);
// Results in an Exception. You can't remove
// a primary key constraint.
ordersTable.Constraints.RemoveAt(0);
}
catch(Exception ex)
{
// Process exception and return.
Console.WriteLine("Exception of type {0} occurred.",
ex.GetType());
}
}
private static void Collection_Changed(object sender,
System.ComponentModel.CollectionChangeEventArgs ex)
{
Console.WriteLine("List_Changed Event: '{0}'\t element={1}",
ex.Action, ex.Element);
}
Private Shared Sub ConstraintCollectionChanged()
' Demonstrate ConstraintCollection.CollectionChanged event.
Try
' Create Customers table.
Dim customersTable As New DataTable("Customers")
customersTable.Columns.Add("id", Type.GetType("System.Int32"))
customersTable.Columns.Add("Name", Type.GetType("System.String"))
AddHandler customersTable.Constraints.CollectionChanged, _
New System.ComponentModel.CollectionChangeEventHandler( _
AddressOf Collection_Changed)
' Create Orders table.
Dim ordersTable As New DataTable("Orders")
ordersTable.Columns.Add("CustID", Type.GetType("System.Int32"))
ordersTable.Columns.Add("CustName", Type.GetType("System.String"))
AddHandler ordersTable.Constraints.CollectionChanged, _
New System.ComponentModel.CollectionChangeEventHandler( _
AddressOf Collection_Changed)
' Create unique constraint.
Dim constraint As New UniqueConstraint(customersTable.Columns("id"))
customersTable.Constraints.Add(constraint)
' Create unique constraint and specify as primary key.
ordersTable.Constraints.Add( _
"pKey", ordersTable.Columns("CustID"), True)
' Remove constraints.
customersTable.Constraints.RemoveAt(0)
' Results in an Exception. You can't remove
' a primary key constraint.
ordersTable.Constraints.RemoveAt(0)
Catch ex As Exception
' Process exception and return.
Console.WriteLine($"Exception of type {ex.GetType()} occurred.")
End Try
End Sub
Private Shared Sub Collection_Changed(sender As object, _
ex As System.ComponentModel.CollectionChangeEventArgs)
Console.WriteLine($"List_Changed Event: '{ex.Action}'{vbTab} element={ex.Element}")
End Sub
Commenti
Per altre informazioni su come gestire gli eventi, vedere la gestione e generazione di eventi.