我有GridView
允许选择。它从EntityDataSource
. 如何获取选择行时选择的实体对象GridView
?实体的主键不显示在GridView
.
感谢您的回答
我有GridView
允许选择。它从EntityDataSource
. 如何获取选择行时选择的实体对象GridView
?实体的主键不显示在GridView
.
感谢您的回答
如果您在网格视图中使用模板字段,则可以在 CommandArgument 属性中为您的选择命令传递主键。例子:
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="btnSelect" runat="server" Text="Select" CommandName="select" CommandArgument='<%# Eval("My_Primary_Key") %>' />
</ItemTemplate>
</asp:TemplateField>
然后,当用户单击“选择”按钮时,这会在您的 gridview 上触发“RowCommand”事件。如果您捕获此事件并检查 e.CommandArgument 属性,您将能够访问与他们选择的行对应的主键:
protected void myGridView_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName.Equals("select", StringComparison.CurrentCultureIgnoreCase))
{
int primaryKeyInteger = Convert.ToInt32(e.CommandArgument);
// Do other stuff ...
}
}
希望这可以帮助!
您可以使用网格视图的 DataKeyNames 字段属性,也可以放置隐藏值并将数据绑定到数据绑定事件。使用隐藏字段 Gridview 选择事件,您可以搜索找到隐藏字段并从那里获取值。谢谢以下链接将为您提供帮助。
您可以在 gridview 中使用隐藏控件来隐藏主键
您可以使用主键转到数据库使用主键搜索记录。然后在程序中使用一个类来接收数据。(c#是属性)