很多人说很难,其实就这几行代码。只要在DataGrid1的ItemDataBound中写入下代码即可
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemIndex>=0) //此行可以删除掉
{
//弹出窗口代码
e.Item.Attributes.Add("onclick","window.open('WebForm2.aspx?ZoneNo="+e.Item.Cells[0].Text+"','','Toolbar=no')");
e.Item.Attributes.Add("onMouseOver","this.style.backgroundColor='#e9e9e9'; this.style.cursor='hand';");
e.Item.Attributes.Add("onMouseOut","this.style.backgroundColor='#f7f7f7';");
}
}
如果想Click行时进入编辑状态,还可以在DataGrid1中添加一列Edit模板列,并将该列设置成隐藏状态,然后在ItemDataBound事件中加入如下代码(比如第5列为Edit列)
LinkButton oSelect = (LinkButton)e.Item.Cells[4].Controls[0];
e.Item.Attributes.Add("onclick",Page.GetPostBackClientHyperlink (oSelect,""));
这样点击行就如同点击了Edit列一样。