我想保存在GridView中设置的学生ID。我想通过对象名称为“am”的模型将每行学生ID保存到表中。
for (int i = 0; i < GridView1.Rows.Count; i++)
{
am.Std_ID= GridView1.Rows[i]["Std_ID"];
}
通过使用上述方法,它表示您无法使用GridView进行索引。我该怎么办。
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" >
<Columns>
<asp:BoundField DataField="FullName" HeaderText="Student Names"/>
<asp:TemplateField ItemStyle-HorizontalAlign = "Center">
<ItemTemplate>
<asp:TextBox runat="server" ID="marks" Width="30px" ></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我的第二个问题是在ItemTemplate中我正在使用文本框。当我在函数中使用它的ID时,Visual Studio会说“当前上下文中不存在标记”。我该怎么办?
答案 0 :(得分:0)
这不存在: -
GridView1.Rows[i]["Std_ID"];
您不以这种方式访问绑定到网格的数据;您需要引用DataItem属性。
但是你的要求很常见,你可以在itemtemplate中添加一个HiddenField控件来存储你的ID,并在服务器端方法中检索控件(以及它的值)。