Gridview's Boundfield Issue

本文关键字:Boundfield Issue Gridview | 更新日期: 2023-09-27 18:18:04

我有一个gridview在我的表单与一些字段。我添加了两个字段到我的gridview,因为我想在我的后台代码中使用它们的数据,我在后台代码中获取它们,但问题是我不希望这些列在gridview中可见,所以我试图设置他们的可见属性"假",但没有工作,我没有访问他们的数据。怎样才能实现呢?

        <asp:BoundField DataField="Service_Id" HeaderText="Service_Id"   SortExpression="Service_Id" HeaderStyle-BackColor="Gray"
            Visible="true">
            <HeaderStyle BackColor="Gray"></HeaderStyle>
        </asp:BoundField>
        <asp:BoundField DataField="UserId" HeaderText="UserID" SortExpression="UserId" HeaderStyle-BackColor="Gray"
            Visible="true">
            <HeaderStyle BackColor="Gray"></HeaderStyle>
        </asp:BoundField>

这是我页面的后台代码:

    Button Button1 = (Button)sender;
        GridViewRow grdRow = (GridViewRow)Button1.Parent.Parent;
        HiddenFieldServiceID.Value = grdRow.Cells[0].Text;
        HiddenFieldUserID.Value = grdRow.Cells[1].Text;

Gridview's Boundfield Issue

您不应该使用BoundField。请使用DataKeyNames属性。然后可以使用DataKeys[rowIndex]

获取这些值。

ASPX:

DataKeyNames="Service_Id, UserId";
代码:

var Service_Id = (int)gv.DataKeys[rowIndex]["Service_Id"];
var UserId = (int)gv.DataKeys[rowIndex]["UserId"];