Question

I want to be able to wrap a gridview row delete in a try catch and display a nice error message on the screen or try to stop the delete from happening in certain circumstances.

At the moment, I am getting foreign key violations in the database. So I either want to stop the delete from happening if there are child records or catch the foreign key exception and display a nice error message to the screen.

Can anyone tell me how to do this?

Was it helpful?

Solution

You can use GridView Row Deleting Event

Here is a sample code for that :

void CustomersGridView_RowDeleting
        (Object sender, GridViewDeleteEventArgs e)
    {
        TableCell cell = CustomersGridView.Rows[e.RowIndex].Cells[2];
        if (cell.Text == "Beaver")
        {
            e.Cancel = true;
            Message.Text = "You cannot delete customer Beaver.";
        }
        else
        {
            Message.Text = "";
        }
    } 

OTHER TIPS

Using the datasource Deleting event might be cleaner as one does not depend on the GUI elements and their possible repositioning that might break the code.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top