[此贴子已经被作者于2006-11-17 20:36:54编辑过]
[此贴子已经被作者于2006-11-17 20:36:54编辑过]
我要后台响应的,要进行数据库处理
设了
例:
private void grdServer_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Header)
{
CheckBox chk = (CheckBox)e.Item.FindControl("chkAllServer");
// 给页眉上的CheckBox添加出发事件
chk.CheckedChanged +=new EventHandler(chk_CheckedChanged);
}
}
// 得到指定DataGrid的题头的CheckBox对象
private CheckBox GetHeaderCheckBox(DataGrid grd)
{
CheckBox chk = null;
foreach (DataGridItem i in grd.Controls[0].Controls)
{
if(i.ItemType == ListItemType.Header)
{
chk = (CheckBox)i.FindControl("chkAllServer");
break;
}
}
return chk;
}
private void chk_CheckedChanged(object sender, System.EventArgs e)
{
CheckBox chk = this.GetHeaderCheckBox(this.grdServer);
foreach (DataGridItem i in this.grdServer.Items)
{
CheckBox inChk = (CheckBox)i.FindControl("CheckBox2");
inChk.Checked = chk.Checked;
}
这个是DataGrid的事件吧,我用的是GridView,我改成下面针对GridView(不知道改得对不对)的后还是不行
public void chk_CheckedChanged(object sender, System.EventArgs e)
{
CheckBox chk = this.GetHeaderCheckBox(this.GridView1);
foreach (GridViewRow i in this.GridView1.Rows)
{
CheckBox inChk = (CheckBox)i.Cells[0].Controls[1];
inChk.Checked = chk.Checked;
}
}
protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType.ToString().Equals("Header"))
{
this.txt_code.Text = e.Row.RowType.ToString();
CheckBox chk = (CheckBox)e.Row.Cells[0].Controls[1];
chk.CheckedChanged += new EventHandler(chk_CheckedChanged);
}
}
GridView模版里面放了一个LinkButton,怎么才能取出点击行的内容? 比如取出此行的ID(在LinkButton的事件里怎么写,或者其他的方法,总之点击所在行的LinkButton就能得到ID)
ID:数据库表中的字段