我有一个GridView和一个按钮,如下所示。然后,我将GridView绑定到来自我的数据库的数据。GridView有两个HiddenField,用于Id和ClassIndex。
当我选择复选框并点击按钮时,我想获取相应的Id和FileName。
和按钮类似
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="check" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:HiddenField ID="hdfId" runat ="server" Value='<%#Eval("Id") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:HiddenField ID="hdfClssIndex" runat ="server" Value='<%#Eval("ClassIndex") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="lblFileName" runat ="server" Text='<%#Eval("FileName") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
和按钮类似
<asp:Button ID="Button1" runat="server" onclick="Button1_Click"
Text="Send Request" />
protected void Button1_Click(object sender, EventArgs e)
{
foreach (GridViewRow row in GridView1.Rows)
{
var check = row.FindControl("check") as CheckBox;
if (check.Checked)
{
int Id = Convert.ToInt32(row.Cells[1].Text);
//some logic follws here
}
}
}
但是我遇到了一个错误:
输入字符串的格式不正确。这个错误是什么意思,如何解决?
DataKeyNames
属性,并且可以通过DataKeys
来访问其值。请参考以下链接:https://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.gridview.datakeynames(v=vs.110).aspx 和 https://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.gridview.datakeys(v=vs.110).aspx - Bharadwaj