2009-10-11 44 views
2

我想能夠包裝一個try catch中的gridview行刪除,並在屏幕上顯示一個不錯的錯誤消息或嘗試停止刪除從某些情況下發生。ASP.NET - 如何包裝GridView刪除在嘗試catch或停止行刪除

目前,我在數據庫中獲得外鍵違規。所以我要麼停止發生刪除,如果有子記錄或捕獲外鍵異常並向屏幕顯示一個很好的錯誤信息。

誰能告訴我如何做到這一點?

+0

你的意思是你的行刪除調用引發外鍵異常?或者你不編碼刪除功能,但讓框架爲你做? – 2009-10-12 00:54:41

回答

4

您可以使用GridView Row Deleting Event

下面是一個示例代碼:

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 = ""; 
     } 
    } 
+0

「定製海狸」+1 +1 – recursive 2009-10-12 01:29:30

+0

同一海狸的另一個+1! – 2009-10-12 03:27:50

+0

何時刪除行?關聯數據源刪除之前還是之後?我嘗試了以上,但似乎並沒有被調用。 – GordyII 2009-10-13 22:52:38

1

使用數據源刪除事件作爲一個不依賴於GUI元素,可能是更清潔的可能的重新定位可能會破壞代碼。