2012年5月16日 星期三

{C#}Gridview 內按鈕觸發事件

當在Gridview欄位內放置按鈕需要定義觸發後的工作,則使用Gridview_RowCommand事件

事件定義:
按一下 GridView 控制項中的按鈕時,會引發 RowCommand 事件。這可讓您提供事件處理方法,用於每次發生這個事件時執行自訂常式。


步驟:
1.在按鈕內aspx設定 CommandName屬性, CommandName="exportToExcel"
2.建立RowCommand事件
3.事件內判斷
if (e.CommandName=="exportToExcel")
{
    //放置觸發後工作
}

附:
如需要從Bing資料時,取得資訊,以利Command事件使用之引數
方法:
GridView_RowDataBound事件中,取得按鈕控制項,給于CommandArgument值

if (e.Row.RowType == DataControlRowType.DataRow)
            {
                ImageButton imgButton = (ImageButton)e.Row.FindControl("exportToExcel");
                desc = DataBinder.Eval(e.Row.DataItem, "Id").ToString();
                imgButton.CommandArgument = desc;
            }


參考資料:http://msdn.microsoft.com/zh-tw/library/system.web.ui.webcontrols.gridview.rowcommand(v=vs.80).aspx