這篇文章主要介紹了利用sender的Parent獲取GridView中的當前行的方法,大家參考使用吧
獲取GridView當行有好幾個方法: 1 加RowCommand事件中,判斷請求的發出按鈕控件名,根據傳遞的參數來獲取當前行中我們需要的參數。 2 GridView設置datakeynames方式。 以上方法實現不再累贅。 今天給大家介紹一種最方便,也最滿足日常思維的好辦法: 采用控件事件的sender的Parent來獲取cell對象,再取cell的上級對象,也就是row對象了。簡單吧! 示例如下: 在第三列中放了一個模板列,放入了一個CheckBox,想法是在選中時,設置第四列Lable狀態標識為“T”,取消選中時,第四列Lable狀態標識清空 CheckBox直接在模板列中雙擊,加入以下代碼即可。 代碼如下: protected void CheckBox1_CheckedChanged(object sender, EventArgs e) { CheckBox chk = (CheckBox) sender; DataControlFieldCell dcf = (DataControlFieldCell)chk.Parent; GridViewRow gvr = (GridViewRow)dcf.Parent; if (chk.Checked) { Label lab = (Label)gvr.Cells[3].FindControl("Label1"); lab.Text = "T"; } else { Label lab = (Label)gvr.Cells[3].FindControl("Label1"); lab.Text = ""; } }