采用gridview值

时间:2014-01-07 11:43:52

标签: c# asp.net gridview

我想保存在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会说“当前上下文中不存在标记”。我该怎么办?

1 个答案:

答案 0 :(得分:0)

这不存在: -

GridView1.Rows[i]["Std_ID"];

您不以这种方式访问​​绑定到网格的数据;您需要引用DataItem属性。

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridviewrow.dataitem(v=vs.110).aspx

但是你的要求很常见,你可以在itemtemplate中添加一个HiddenField控件来存储你的ID,并在服务器端方法中检索控件(以及它的值)。