功能: 1:添加行单击事件 2:获取行里面的单元格值 主要代码: protected void GridView1_RowDataBound( object sender, GridViewRowEventArgs e) { Button btnHiddenPostButton = e.Row.FindControl("btnHiddenPostButton") as Button; if (btnHiddenPostButton != null) { e.Row.Attributes["onclick"] = String.Format("javascript:document.getElementById('{0}').click()", btnHiddenPostButton.ClientID); // 额外样式定义 e.Row.Attributes["onmouseover"] = "javascript:this.style.background='red'"; e.Row.Attributes["onmouseout"] = "javascript:this.style.background=''"; e.Row.Attributes["style"] = "cursor:pointer"; e.Row.Attributes["title"] = "单击选择当前行"; } // 若希望将隐藏按钮单独放于一列,则设置此列隐藏,占位符 <cellIndex> 表示此列索引 //e.Row.Cells[<cellIndex>].Attributes["style"] = "display:none"; } protected void GridView1_RowCommand( object sender, GridViewCommandEventArgs e) { GridViewRow row = null; Label lbl = null; switch (e.CommandName) { case "HiddenPostButtonCommand": // 模板列 Control cmdControl = e.CommandSource as Control; // 表示触发事件的 IButtonControl,保持统一性并便于后续操作,我们这里直接转化为控件基类 Control row = cmdControl.NamingContainer as GridViewRow; // 当前行 // 如何访问单元格值 // string txt = row.Cells[0].Text; // 如何获取模板列中的 Label lbl = row.FindControl("MyLabelID") as Label; // 执行更多的自定义操作 // // string txt = lbl.Text.ToString(); Response.Write(txt); Response.Write(String.Format("GridView Version 当前第 {0} 行:", row.RowIndex + 1)); break; // case "Command2": // more cases // } } 源代码下载 转载于:https://www.cnblogs.com/raymond19840709/archive/2007/08/29/874687.html