GridView单击行 选择checkbox
最主要就是在后台重写render事件:
protected override void Render(HtmlTextWriter writer)
{
foreach (GridViewRow row in this.GridFreight.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
row.Attributes["onclick"] = ClientScript.GetPostBackEventReference(this.GridFreight, "Select$" + row.RowIndex.ToString(), true);
row.Attributes["style"] = "cursor:pointer";
row.Attributes["title"] = "单击选择行";
}
}
base.Render(writer);
}
相应的 添加gridview的
protected void GridFreight_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
ViewState["tmpID"] = e.NewSelectedIndex.ToString();
}
protected void GridFreight_SelectedIndexChanged(object sender, EventArgs e)
{
int itmpid = int.Parse(ViewState["tmpID"].ToString());
CheckBox cb = (CheckBox)this.GridFreight.Rows[itmpid].FindControl("checkbox1");
if (cb.Checked)
{
cb.Checked = false;
}
else
{
cb.Checked = true;
}
}