gridview 主键值问题

long312268543 2008-06-30 03:45:18
这是gridview里面的绑定的列 期DatakeyNames="Number"
<ItemTemplate>
<%# Eval("Number")%>
</ItemTemplate>
<ItemTemplate>
<%# Eval("Name")%>
</ItemTemplate>
<ItemTemplate>
<asp:button id="button1" runat="server" text="修改" Onclick="button1_Click">
</ItemTemplate>
请问我现在点击按钮要怎么得到当前按钮行的主键值呢?
目前我得到的是girdview里面所有绑定列的主键值!我要怎么得到当前按钮点击行的主键值?
...全文
96 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
popule_daisy 2008-06-30
  • 打赏
  • 举报
回复
在gridView里面有一个下面这样的事件
在创建button1的时候,注意添加好commandName CommandArgument两个参数

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName.Equals("add"))
{
string val = this.GridView1.DataKeys[GridView1.SelectedIndex].Value;
//获得主键值
}
}
蝶恋花雨 2008-06-30
  • 打赏
  • 举报
回复
方法一:<asp:Button ID="LkDel" runat="server" OnClick="LkDel_Click"
CommandArgument='<%#Eval("commentid") %>' /></span>

 protected void LkDel_Click(object seder, EventArgs e)
{ //定义评论ID
string commentid = ((Button )seder).CommandArgument.ToString();
if (commentid != null)
{
sqlt.Operate("delete dbo.space_MyComments where commentid=" + commentid + " "); sqlt.ConClose();
}
}

方法二:
<asp:HiddenField ID="Number" runat="server" Value='<%#Eval("Number")%>' />放在gridview里面

for(inti =0;i<gridview1.rows.count;i++)
{
string id=((HiddenField)grivews.rows[i].findcontrol('Number'))。value
}
xhan2000 2008-06-30
  • 打赏
  • 举报
回复
gridview.datakeys[e.itemindex]大概这样
long312268543 2008-06-30
  • 打赏
  • 举报
回复
谢谢楼上的!结贴!都给你!
cftea 2008-06-30
  • 打赏
  • 举报
回复
你需要给 ImageButton2 的 CommandName 和 CommandArgument 赋值。
然后响应 GridView 的 onrowcommand。

详细一点:
CommandName 自定义一个命令名称;
CommandArgument 命令的参数值,你可能需要这样写:CommandArgument=' <%# Eval("Number") %>',以表示不同的行;
onrowcommand 中有一个参数的类型为 GridViewCommandEventArgs,它可以获取你所点的按钮的 CommandName、CommandArgument 值。
lass_name 2008-06-30
  • 打赏
  • 举报
回复

<asp:button id="button1" CommandArgument='<%#Eval("绑定主键")' runat="server" text="修改" Onclick="button1_Click">

在button1_Click中
string id = ((Button)sender).CommandArgument;
获得主键。
就可以判断当前行了!

long312268543 2008-06-30
  • 打赏
  • 举报
回复
怎么没人回答哦?

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧