ConstraintCollection.CollectionChanged-Ereignis
Tritt immer dann ein, wenn die ConstraintCollection aufgrund des Hinzufügens oder Entfernens von Constraint-Objekten geändert wurde.
Namespace: System.Data
Assembly: System.Data (in system.data.dll)
Syntax
'Declaration
Public Event CollectionChanged As CollectionChangeEventHandler
'Usage
Dim instance As ConstraintCollection
Dim handler As CollectionChangeEventHandler
AddHandler instance.CollectionChanged, handler
public event CollectionChangeEventHandler CollectionChanged
public:
event CollectionChangeEventHandler^ CollectionChanged {
void add (CollectionChangeEventHandler^ value);
void remove (CollectionChangeEventHandler^ value);
}
/** @event */
public void add_CollectionChanged (CollectionChangeEventHandler value)
/** @event */
public void remove_CollectionChanged (CollectionChangeEventHandler value)
JScript unterstützt die Verwendung von Ereignissen, aber nicht die Deklaration von neuen Ereignissen.
Hinweise
Weitere Informationen über die Behandlung von Ereignissen finden Sie unter Behandeln von Ereignissen.
Beispiel
Im folgenden Beispiel wird die Verwendung des CollectionChanged-Ereignisses veranschaulicht.
Private Shared Sub ConstraintCollectionChanged()
' Demonstrate ConstraintCollection.CollectionChanged event.
Try
' Create Customers table.
Dim customersTable As DataTable = 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 DataTable = 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 UniqueConstraint = 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 {0} occurred.", _
ex.GetType().ToString())
End Try
End Sub
Private Shared Sub Collection_Changed( sender As object, _
ex As System.ComponentModel.CollectionChangeEventArgs)
Console.WriteLine("List_Changed Event: '{0}'\t element={1}", _
ex.Action, ex.Element)
End Sub
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);
}
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
.NET Compact Framework
Unterstützt in: 2.0, 1.0
Siehe auch
Referenz
ConstraintCollection-Klasse
ConstraintCollection-Member
System.Data-Namespace