看板 C_Sharp 關於我們 聯絡資訊
※ 引述《testcrack (testcrack)》之銘言: : 我的GridView有開分頁(AllowPaging=true) : 分頁的功能沒有問題,但是後來我新增了一個欄位,有放ImageButton : 發現點選其他頁時,就會出現錯誤訊息... : 錯誤訊息如下: : 無法將型別 'System.Web.UI.WebControls.GridView' 的物件轉換為型別 : 'System.Web.UI.WebControls.ImageButton'。 : 此欄位的動作如下: : protected void GridView1_RowCommand(object sender,GridViewCommandEventArgs e) : { : GridViewRow selectedRow = : (GridViewRow)((ImageButton)e.CommandSource).NamingContainer; : int index = selectedRow.RowIndex; : string Event_ID = : (GridView1.Rows[index].Cells[1].FindControl("HyperLink1") as : HyperLink).Text.ToString(); : if (e.CommandName.ToString() == "Select1") : Response.Write(Event_ID+"-A"); : if (e.CommandName.ToString() == "Select2") : Response.Write(Event_ID+"-B"); : if (e.CommandName.ToString() == "Select3") : Response.Write(Event_ID+"-C"); : } : 請問該麼處理? 我還沒實際測試過 不過我想 分頁的時候引發事件 也會進到GridView1_RowCommand 那個時候的e.CommandSource 並不是ImageButton 而是GridView 所以 你應該事先檢查e.CommandSource的型態 來決定是不是 ImageButton 再來決定 是不是要進行接下來的事件 但是 實際上 這邊的作法其實有一點多繞一圈的感覺 如果你要取得所選的Row Gridview有 .SelectedRow 可以用 不用這麼麻煩 再從控制項去抓容器 底下也可以換成Switch 可以比較好閱讀 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.87.130.93