C# 获取不可见的边界字段的值
我的gridview中有以下两个边界字段C# 获取不可见的边界字段的值,c#,asp.net,C#,Asp.net,我的gridview中有以下两个边界字段 <asp:BoundField DataField="ProductId" HeaderText="ID" HeaderStyle-HorizontalAlign="Left" Visible = "false" /> <asp:BoundField DataField="ProductDescription" HeaderText="product Description" HeaderStyle-HorizontalAlign="
<asp:BoundField DataField="ProductId" HeaderText="ID" HeaderStyle-HorizontalAlign="Left" Visible = "false" />
<asp:BoundField DataField="ProductDescription" HeaderText="product Description" HeaderStyle-HorizontalAlign="Left" />
如果第一个绑定字段设置为visible false,如何获取其值?对于ID,最好在GridView上使用
DataKeyNames
属性
DataKeyNames="ProductId"
然后在代码隐藏中,您可以获得它
GridView1.DataKeys[row_index]["ProductId"]
对于IDs,最好在GridView上使用
DataKeyNames
属性
DataKeyNames="ProductId"
然后在代码隐藏中,您可以获得它
GridView1.DataKeys[row_index]["ProductId"]
无法访问不可见的BoundField的值。您必须使用
TemplateField
并在其中添加HiddenField
控件,并绑定其Value属性
加价
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:HiddenField ID="HiddenField1" runat="server"
Value='<%# Eval("ProductId") %>' />
....
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
无法访问不可见的BoundField的值。您必须使用
TemplateField
并在其中添加HiddenField
控件,并绑定其Value属性
加价
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:HiddenField ID="HiddenField1" runat="server"
Value='<%# Eval("ProductId") %>' />
....
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>