Dou*_*Ali 4 c# asp.net checkbox gridview ispostback
我正在使用从数据库填充的checkbox列.下面的按钮应该检索已经检查过的行的数据.当我遍历所有行时,即使我在单击按钮之前检查了所有行,它们也都没有.这是代码:gridviewSQLgridviewcheckboxe'scheckboxe'schecked==trueASP.NET
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="chkRow" runat="server" />
</ItemTemplate>
</asp:TemplateField>
Run Code Online (Sandbox Code Playgroud)
这是按钮的动作循环遍历所有行的复选框:
protected void GetSelectedRecords(object sender, EventArgs e)
{
foreach (GridViewRow row in GridView1.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
CheckBox chkRow = (row.Cells[0].FindControl("chkRow") as CheckBox);
if (chkRow != null && chkRow.Checked) //chkRow.Checked is always "false"
{
string name = row.Cells[2].Text;
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
非常感谢提前.我非常感谢任何帮助.
如果要绑定网格Page_Load,请确保不绑定网格if(!IsPostBack){}.否则你将失去checkboxe's每个postback,因此失去了状态checkboxe's.
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
//Bind Your Grid Here
}
}
Run Code Online (Sandbox Code Playgroud)