在前面的部分中,你已經看到了幾個數據控件事件的例子。數據控件的事件 都是在頁面執行生命周期的適當時候提供給你,供你插入自定義代碼的。一般情 況下,在某種特定的操作發生之前和之後,數據控件都會暴露事件。在某種操作 之前調用的事件的名稱一般帶有-ing後綴,而在某種操作之後調用的事件的名稱 一般帶有-ed後綴。例如,GridView所支持的事件包括:
· PageIndexChanging和PageIndexChanged - 在分頁操作之前和之後引發
· SelectedIndexChanging和SelectedIndexChanged - 在選擇操作發生之前 和之後引發
· Sorting和Sorted - 在排序操作之前和之後引發
· RowEditing和RowCancelingEdit - 在數據行進入編輯模式之前或編輯模 式被終止之前引發
· RowUpdating和RowUpdated - 在更新操作之前和之後引發
· RowDeleting和RowDeleted - 在刪除操作之前和之後引發
· RowDataBound - 當數據行進行數據綁定的時候引發
· RowCreated - 當建立了數據行並顯示的時候引發
· RowCommand - 調用內部控件的按鈕命令的時候引發
數據源控件也暴露了一些事件,與數據綁定控件的事件類似。SqlDataSource 和ObjectDataSource控件都支持下面一些事件:
· Selecting和Selected - 在選擇操作之前和之後引發
· Updating和Updated - 在更新操作之前和之後引發
· Deleting和Deleted - 在刪除操作之前和之後引發
· Inserting和Inserted - 在插入操作之前和之後引發
· Filtering - 在過濾器操作發生之前引發
當ObjectDataSource控件的TypeName屬性所指定的對象建立或銷毀的時候, 它還提供了額外的事件。你可以通過設置隨事件參數傳遞的ObjectInstance屬性 ,在ObjectCreating事件中設置自定義的對象。
· ObjectCreating和ObjectCreated - 在對象被建立之前和之後引發
· ObjectDisposing - 在對象銷毀之前引發