GridView里嵌套CheckBox,用以实现选中进行删除的操作。可是不管怎么弄,checked属性始终为false。求高人指点。代码如下:
前台代码:
<asp:TemplateField HeaderText="删除">
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>
</asp:TemplateField>后台代码:
注:Button2为删除按钮,单击,将通过复选框选中的行进行删除
protected void button2_Click(object sender, EventArgs e)
{
int flag = 0;
PE.BLL.QuestionnaireOperationBLL questionnaireOpertionBLL = new PE.BLL.QuestionnaireOperationBLL();
int questionnaireId = 0;
for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
{
CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
if (cbox.Checked == true)
{
questionnaireId = Convert.ToInt32(GridView1.Rows[i].Cells[1].Text);
questionnaireOpertionBLL.DeleteQuestionnaire(questionnaireId);
flag = flag + 1;
}
}
Response.Write(flag.ToString());
}
前台代码:
<asp:TemplateField HeaderText="删除">
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>
</asp:TemplateField>后台代码:
注:Button2为删除按钮,单击,将通过复选框选中的行进行删除
protected void button2_Click(object sender, EventArgs e)
{
int flag = 0;
PE.BLL.QuestionnaireOperationBLL questionnaireOpertionBLL = new PE.BLL.QuestionnaireOperationBLL();
int questionnaireId = 0;
for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
{
CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
if (cbox.Checked == true)
{
questionnaireId = Convert.ToInt32(GridView1.Rows[i].Cells[1].Text);
questionnaireOpertionBLL.DeleteQuestionnaire(questionnaireId);
flag = flag + 1;
}
}
Response.Write(flag.ToString());
}
http://dotnet.aspx.cc/article/a8efc285-f0b1-4f8f-8e73-2b7d8724a47c/read.aspx
{
if (GridView1.Rows[i].RowType == DataControlRowType.DataRow)
{
CheckBox ck = GridView1.Rows[i].FindControl("ckID") as CheckBox;
if (ck.Checked)
{
//业务操作
}
}
}
{
if (GridView1.Rows[i].RowType == DataControlRowType.DataRow)
{
CheckBox ck = GridView1.Rows[i].FindControl("CheckBox1") as CheckBox;
if (ck.Checked)
{
//业务操作
}
}
}
}
{
bool ischeck = (GridView1.Rows[i].FindControl("CheckBox1") as CheckBox).Checked;
string id = (GridView1.DataKeys[GridView1.Rows[i].DataItemIndex].Value).ToString();
if (ischeck)
{
Business.Library.ProductResBL.Delete(id);
} }
//这是我的你的这句:questionnaireId = Convert.ToInt32(GridView1.Rows[i].Cells[1].Text);
是不是应该放到外面去
{
//绑定数据
}