一段留言板后台程序中回复留言的一段代码(C#)

来源:百度知道 编辑:UC知道 时间:2024/05/11 02:30:16
string uid = string.Empty;
DateBaseClass db = new DateBaseClass();
try
{
for (int i = 0; i < GridView2.Rows.Count; i++)
{
CheckBox cb = (CheckBox)GridView2.Rows[i].Cells[0].FindControl("CheckBox1");
if (cb.Checked)
{
HiddenField hf = (HiddenField)GridView2.Rows[i].Cells[0].FindControl("HiddenField1");
uid = hf.Value;
db.HuiFuContent(uid, TextBox5.Text);

}
}
Response.Redirect("Default2.aspx");
}
catch
{
Label6.Text = "<script>window.alert('回复留言失败~~');</script>";
}

}
问题:
1。FOR(int i = 0; i < GridView2.Rows.Count; i++)
这句话的意思是当i小GridView2的行数书时就进行循环。
但是为什么

1. 小于gridview的行数进行循环的就是在遍历gridview中的每一行

2. FindControl("controlName")用来在girdview的某一行中查找名称为controlName的控件,返回的是控件的基类,所以要强制转型成需要的控件.这里gridview每一行放了一个checkbox标示这行是否选中,和一个hidden field,存储了这条留言的id, 遍历每一行当发现check被选中时,取出这一行的hidden field的值,然后db.HuiFuContent(uid, TextBox5.Text), 把文本框的内容作为这一条留言的回复保存进数据库