DataTable.RowDeleting Event

Definition

Occurs before a row in the table is about to be deleted.

public:
 event System::Data::DataRowChangeEventHandler ^ RowDeleting;
public event System.Data.DataRowChangeEventHandler? RowDeleting;
public event System.Data.DataRowChangeEventHandler RowDeleting;
[System.Data.DataSysDescription("DataTableRowDeletingDescr")]
public event System.Data.DataRowChangeEventHandler RowDeleting;
member this.RowDeleting : System.Data.DataRowChangeEventHandler 
[<System.Data.DataSysDescription("DataTableRowDeletingDescr")>]
member this.RowDeleting : System.Data.DataRowChangeEventHandler 
Public Custom Event RowDeleting As DataRowChangeEventHandler 

Event Type

Attributes

Examples

private static void DataTableRowDeleting()
{
    DataTable customerTable = new DataTable("Customers");
    // add columns
    customerTable.Columns.Add( "id", typeof(int));
    customerTable.Columns.Add( "name", typeof(string));
    customerTable.Columns.Add( "address", typeof(string));

    // set PrimaryKey
    customerTable.Columns[ "id" ].Unique = true;
    customerTable.PrimaryKey = new DataColumn[]
        { customerTable.Columns["id"] };

    // add a RowDeleting event handler for the table.
    customerTable.RowDeleting += new DataRowChangeEventHandler( Row_Deleting );

    // add ten rows
    for( int id=1; id<=10; id++)
    {
        customerTable.Rows.Add(
            new object[] { id, string.Format("customer{0}", id),
            string.Format("address{0}", id) });
    }

    customerTable.AcceptChanges();

    // Delete all the rows
    foreach( DataRow row in customerTable.Rows )
        row.Delete();
}

private static void Row_Deleting( object sender,
    DataRowChangeEventArgs e )
{
    Console.WriteLine( "Row_Deleting Event: name={0}; action={1}",
        e.Row["name"], e.Action );
}
Private Shared Sub DataTableRowDeleting()
    Dim customerTable As New DataTable("Customers")
    ' add columns
    customerTable.Columns.Add( "id", Type.GetType("System.Int32"))
    customerTable.Columns.Add( "name", Type.GetType("System.String"))
    customerTable.Columns.Add( "address", Type.GetType("System.String"))

    ' set PrimaryKey
    customerTable.Columns( "id").Unique = true
    customerTable.PrimaryKey = New DataColumn() { customerTable.Columns("id") }

    ' add a RowDeleting event handler for the table.
    AddHandler customerTable.RowDeleting, New _
        DataRowChangeEventHandler( AddressOf Row_Deleting )


    ' add ten rows
    Dim id As Integer
    For id = 1 To 10
        customerTable.Rows.Add( _
            New Object() { id, string.Format("customer{0}", id), _
            string.Format("address{0}", id) })
    Next
    
    customerTable.AcceptChanges()

    ' Delete all the rows
    Dim row As DataRow
    For Each row In customerTable.Rows 
        row.Delete()
    Next
End Sub

Private Shared Sub Row_Deleting(sender As Object, _
    e As DataRowChangeEventArgs)
    Console.WriteLine( "Row_Deleting Event: name={0}; action={1}", _
        e.Row("name"), e.Action) 
End Sub

Remarks

For more information, see Handling DataTable Events.

Applies to

See also