如何在asp.net的GridView中获取隐藏列的值?
答案 0 :(得分:1)
首先在网格视图中选择列并将其设为模板列,如下所示:
<asp:Template Field Header Text="SavingId" Visible="false">
<ItemTemplate>
<asp:Label ID = "lblSavingId" runat="server" Text ='<%#Bind(SavingId")%>' />
</ItemTemplate>
</asp:TemplateField>
之后在编码方面你可以像下面这样轻松获取值:
string id= (gridview1.Rows[i].FindControl("lblSavingId") as label).text;
答案 1 :(得分:0)
如果“查看”是您的GridView:
HiddenField test = view.Rows[0].Cells[0].FindControl("myHiddenField") as HiddenField
答案 2 :(得分:0)
如果您在gridview itemtemplate中隐藏了字段,那么您可以通过以下方式找到:
项目数据绑定事件中的:
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
// Find the hidden field
HiddenField _hdn =
(HiddenField)e.Item.FindControl("HiddenField Id Put Here");
}
希望这有帮助。
答案 3 :(得分:0)
我实际上发现Visible = False的列不会出现在结果中。
我需要做的是获得所需的行为,将列设置为可见,然后将样式设置为“visibility:hidden; display:none;”将其隐藏。当我这样做时,我可以通过选择一些其他帖子所指示的列/行来访问列的值。
如果您正在使用DataList,也可以使用隐藏字段执行相同的操作,但如果您使用的是GridView(从您的帖子中听起来就像这是您正在做的事情),您可能需要采取类似的方法。