C# 如何检查gridviewrow中是否选中了复选框
我需要有关此代码的帮助,如果选中或未选中C# 如何检查gridviewrow中是否选中了复选框,c#,checkbox,gridview,webforms,gridviewrow,C#,Checkbox,Gridview,Webforms,Gridviewrow,我需要有关此代码的帮助,如果选中或未选中复选框,我将检查GridView中的每一行。但仍然存在错误。你能帮帮我吗 <asp:GridView ID="GridView1" CssClass="tabulka" runat="server" AutoGenerateColumns="false" /> <Columns> <asp:TemplateField HeaderText="Placení">
复选框,我将检查GridView
中的每一行。但仍然存在错误。你能帮帮我吗
<asp:GridView ID="GridView1" CssClass="tabulka" runat="server" AutoGenerateColumns="false" />
<Columns>
<asp:TemplateField HeaderText="Placení">
<ItemTemplate>
<asp:CheckBox ID="Poslano" runat="server" Text="Vyřešeno" />
<asp:HiddenField ID="id" runat="server" Value='<%# Eval("id").ToString() %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle BackColor="#CCCCCC" />
<HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" />
</asp:GridView>
protected void Button1_Click(object sender, EventArgs e)
{
foreach (GridViewRow gvRow in GridView1.Rows)
{
if (((CheckBox)gvRow.FindControl("Poslano")).Checked) // here is a problem - still false
{
Tabor tab = new Tabor();
tab.Id = Convert.ToInt32(((HiddenField)gvRow.FindControl("id")).Value); // here is good value
}
}
}
受保护的无效按钮1\u单击(对象发送者,事件参数e)
{
foreach(GridViewRow gvRow在GridView1.Rows中)
{
if(((复选框)gvRow.FindControl(“Poslano”).Checked)//这里有一个问题-仍然是false
{
Tabor tab=新Tabor();
tab.Id=Convert.ToInt32(((HiddenField)gvRow.FindControl(“Id”)).Value);//这是一个很好的值
}
}
}
我很久没有使用WebForms了。但是我认为你需要确认回发的问题,看到了吗?你确定要在点击按钮之前选中复选框吗?另一件重要的事情是页面加载的主体。如果在页面加载中填写网格视图
,则必须在中填写代码(!IsPostBack)
。你们能给我们看看页面加载的主体吗?嗨,伙计们,问题解决了!埃尔德尼兹-你说得对!它位于(!IsPostBack)部分的页面加载中。你让我开心!:)自从我不使用WebForms以来,它已经过去了很长一段时间。但是我认为你需要确认回发的问题,看到了吗?你确定要在点击按钮之前选中复选框吗?另一件重要的事情是页面加载的主体。如果在页面加载中填写网格视图
,则必须在中填写代码(!IsPostBack)
。你们能给我们看看页面加载的主体吗?嗨,伙计们,问题解决了!埃尔德尼兹-你说得对!它位于(!IsPostBack)部分的页面加载中。你让我开心!:)嗨,莫希特,谢谢你的帮助,我用另一种方式解决问题。嗨,莫希特,谢谢你的帮助,我用另一种方式解决问题。
Pleae check with below code
foreach(var gvItem in GridView1.Items)
{
CheckBox chkItem = (CheckBox) gvItem.FindControl("Poslano");
if (chkItem.Checked)
{
//Do stuff
}
}