这个GridView代码c#有什么问题?

本文关键字:什么 问题 GridView 代码 这个 | 更新日期: 2023-09-27 18:03:48

我有一个带复选框的GridView。如果我选中一个复选框,我希望得到那一行的值。问题是chk(在c#代码中)永远不会得到值"true",因此代码永远不会进入if语句。

谢谢你的帮助。这个问题我已经花了两个晚上了。

c#

    protected void btnChange_Click(object sender, EventArgs e)
    {
        string id= "";
        string name = "";
        foreach (GridViewRow row in GridView1.Rows)
        {
            CheckBox chk = (CheckBox)row.FindControl("myCheckBox");
            if (chk != null && chk.Checked)
            {
                id = row.Cells[1].Text;
                name = row.Cells[2].Text;
            }
        }          
    }

ASP。净

   <div style="height:200px; width:450px; overflow:scroll;">
                            <asp:GridView ID="GridView1" runat="server" GridLines="Horizontal" HeaderStyle-BackColor="#FFF8C6" HeaderStyle-ForeColor="Black" Height="200px" Width="450px">
                                <HeaderStyle HorizontalAlign="Left" />
                                <Columns>
                                    <asp:TemplateField>
                                        <ItemTemplate>
                                            <asp:CheckBox ID="myCheckBox" runat="server" />
                                        </ItemTemplate>
                                    </asp:TemplateField>
                                </Columns>
                            </asp:GridView>
                        </div>

这个GridView代码c#有什么问题?

问题解决了!我找到了这个解决方案:

试试这个:

检查你是否把你的代码绑定数据到GridView

If (!IsPostBack)
{
     //Code for Binding Data to GridView 
}