[英]What's wrong with this GridView code C#?
我有一个带有复选框的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.NET
<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>
问题解决了! 我找到了这个解决方案:
尝试这个:
检查Wheather,您已将用于将数据绑定到GridView的代码放在
If (!IsPostBack)
{
//Code for Binding Data to GridView
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.