GridView:单击按钮时获取行的数据键

2024-02-13

当我在具有 OnClick 事件的行中有一个按钮时,如何获取 GridView 行的 DataKeyName 的值。在按钮的 OnClick 事件中,我想获取按钮所在行的 DataKeyName。

这可能吗?

<asp:GridView ID="myGridView" run="server">
     <Columns>
          <asp:TemplateField HeaderText="Column 1">
               <ItemTemplate>
                   ... bunch of html codes
                   <asp:Button ID="myButton" UseSubmitBehavior="false" runat="server" Text="Click Me" onclick="btnClick_Click" />
               </ItemTemplate>
           </asp:TemplateField>
     </Columns>
</asp:GridView>

在我的代码隐藏中

protected void btnClick_Click(object sender, EventArgs e)
{
    // How can I get the DataKeyName value of the Row that the Button was clicked?
}

当我使用 GridView 时,我通常不使用OnClick按钮的事件。相反,我使用OnRowCommandGridView 上的事件,并将数据绑定到CommandArgument按钮的属性。您可以从以下位置检索命令参数GridViewCommandEventArgs事件处理程序的参数。

您可以使用CommandName参数绑定任意字符串以区分任意不同kinds您拥有的按钮数量。请注意,某些命令名称已用于其他事件,例如“编辑”、“更新”、“取消”、“选择”和“删除”。

Update:

这是一个示例,假设数据密钥称为“ID”:

<asp:GridView ID="myGridView" runat="server" OnRowCommand="myGridView_RowCommand">
     <Columns>
          <asp:TemplateField HeaderText="Column 1">
               <ItemTemplate>
                   ... bunch of html codes
                   <asp:Button ID="myButton" runat="server" Text="Click Me" CommandName="ClickMe" CommandArgument='<%# Eval("ID") %>' />
               </ItemTemplate>
           </asp:TemplateField>
     </Columns>
</asp:GridView>

在后面的代码中:

protected void myGridView_RowCommand(object sender, GridViewCommandEventArgs e)
{
    var datakey = e.CommandArgument;
    // ...
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GridView:单击按钮时获取行的数据键 的相关文章

  • MVC + Razor:如何有条件地添加起始

    我想根据变量是否设置来修改div 所以我想做这样的事情 if SomethingIsSet div style background red else div style background blue 但我在 Visual Studio
  • 动态生成的控件 ID 返回为 NULL

    我可以在 Page PreInit 函数中创建动态控件 如何检索控件及其 ID 我的 C 代码用于创建动态控件之一 var btn new WebForms Button btn Text btn ID Addmore btn Click
  • DateTime.Parse("2012-09-30T23:00:00.0000000Z") 始终转换为 DateTimeKind.Local

    我想解析一个表示 UTC 格式的日期时间的字符串 我的字符串表示形式包括 Zulu 时间规范 该规范应指示该字符串表示 UTC 时间 var myDate DateTime Parse 2012 09 30T23 00 00 0000000
  • 在 64 位操作系统上以 32 位运行 IIS 与以 64 位运行 IIS 有何优缺点?

    可能更适合 机架溢出 但从开发人员的角度来看 在 64 位 Windows 主机上将 IIS 同时服务于传统经典 ASP 和 NET 作为 32 位进程而不是 64 位进程运行有哪些优点和缺点 32 64 iis 服务器 相对于 32 32
  • ASP.NET IIS 7.5 HTTP 500.21 错误

    我在设置本地站点时遇到问题 该项目使用 ASP NET Framework 4 0 我的 DefaultAppPool 使用 4 0 并集成托管管道模式 这是我得到的错误 HTTP Error 500 21 Internal Server
  • 使用主题 css 文件需要页面上的标头控件。 (例如 )

    我正在开发 asp net 网络项目 当我运行该项目时 它工作正常 但在服务器中 我收到以下错误 如何解决这个问题呢 Using themed css files requires a header control on the page
  • 两个日期范围之间相交的天数

    有人知道如何最好地计算两个日期范围之间相交的天数吗 这是我写的一个小方法来计算这个 private static int inclusiveDays DateTime s1 DateTime e1 DateTime s2 DateTime
  • 我的 MS Access 数据库不会更新 asp.net

    我正在尝试更新我的数据库但没有成功 这就是我的桌子的样子 https i stack imgur com Q6EDk png https i stack imgur com Q6EDk png 打开模态后 它看起来像这样 https i s
  • 无法加载 SQL Server Compact 的本机组件

    我已经在 Win7 x64 上安装了 SQL Server Compact Edition 4 0 它可以运行于 Asp Net 和桌面应用程序 此 PC 还安装了 Visual Studio 2010 SP1 但是我的 Server 20
  • 在 ASP.NET 中加密 cookie

    我想在 ASP NET 中加密 cookie 我已关注本文的方法 http www codeproject com KB web security HttpSecureCookie aspx 但它有一个缺点 那就是在内部方法上使用反射 这导
  • 使用 PHP 对 ASP.NET 成员身份中的用户进行身份验证

    我在尝试使用 PHP 针对现有 ASP NET 成员资格数据库对用户进行身份验证时遇到一些问题 我在网上搜索过 发现现有的答案似乎对我不起作用 即 public static function Hash password salt deco
  • 如何在c#中生成8字节GUID值? [复制]

    这个问题在这里已经有答案了 可能的重复 如何从 GUID 生成 8 字节唯一 ID https stackoverflow com questions 5678177 how to generate 8 bytes unique id fr
  • 管理调试和发布连接字符串

    在 NET SQLServer 应用程序中管理调试和发布连接字符串的好方法是什么 我有两个 SQL Server 一个是生产服务器 一个是构建 调试服务器 我需要一种在部署 ASP NET 应用程序时在这两个服务器之间进行切换的方法 目前
  • Guid 应包含 32 位数字和 4 个破折号

    我有一个包含 createuserwizard 控件的网站 创建帐户后 验证电子邮件及其验证 URL 将发送到用户的电子邮件地址 但是 当我进行测试运行时 单击电子邮件中的 URL 时 会出现以下错误 Guid should contain
  • 从 Orchard 内的主题渲染图像

    我刚刚选择 Orchard 来构建我的博客 作为创建这个新博客的努力的一部分 我正在创建一个自定义主题 这个自定义主题同时具有 CSS 和图像 我的问题 我的问题基本上可以归结为 如何渲染属于主题一部分的图像 到目前为止我已经尝试过的 我尝
  • HTML 属性 bgcolor 已弃用:用什么代替?

    VStudio ASP NET 给出以下消息 Attribute bgcolor is considered outdated A newer construct is recommended 推荐的结构是什么 bgcolor是在一个 td
  • 使用 JQuery 根据下拉列表选择的值显示/隐藏控件

    我正在尝试使用 JQuery 根据下拉菜单的选定索引显示 隐藏 div 标签 但它不起作用 任何帮助将不胜感激 Thanks
  • 将 Windows 窗体应用程序转换为 Asp.net

    我问的是 您之前使用的将 C Windows 窗体应用程序转换为 ASP NET 的最佳工具是什么 我已经关于这个主题 发现了很多工具 但我希望有人根据他的使用情况推荐最好的工具 我真的不建议使用工具来进行转换 Web 应用程序和 WinF
  • 实体框架 4 DB 优先依赖注入?

    我更喜欢创建自己的数据库 设置索引 唯一约束等 使用 edmx 实体框架设计器 从数据库生成域模型是轻而易举的事 现在我有兴趣使用依赖注入来设置一些存储库 我查看了 StackOverflow 上的一些文章和帖子 似乎重点关注代码优先方法
  • oracle ExecuteNonQuery 在 ASP.Net 上冻结

    我正在尝试使用 ASP C 和 CLR 4 5 中的 Oracle 连接来运行非查询 这是我的代码 string connectionString ConfigurationManager ConnectionStrings OracleC

随机推荐

  • 预加载图像并在加载时显示微调器

    Hy 我使用 uploadify 上传一些图像 在我在列表中显示所有图像拇指后 当我单击图像拇指时 会使用此功能在 div 中打开更大的图像 thumbs li a click function var largePath this att
  • 在模式匹配时修改字段

    我今天第一次尝试 Rust 编写 XML 分词器 自然不明白所有内容 我有一个带有可以采用枚举值的字段的结构 enum State Outside InATag str struct Tokenizer state State In a i
  • 如何禁止在webpack编译过程中替换process.env变量?

    Story 我正在开发 AWS Lambda 函数并使用编译代码webpack 我读过一些文章 似乎process env变量在编译期间自动替换 虽然这很酷 但我想禁止这种行为 Why 因为我使用 AWS Lambda 仪表板传递环境变量
  • golang docker run的无限for循环问题

    我尝试做简单的无限循环任务 不使用 docker 也能正常工作 但是当我使用 docker 时 它只无限执行 for 循环的 else 部分 实际上可能是什么问题 docker 是否有无限循环的问题 我的 main go 文件如下所示 pa
  • Word 2010 Interop PDF 导出缺少边框线

    我有一个奇怪的问题 我正在使用 Word 2010 Interop 将 WordML 文档导出为 PDF 有一个带有顶线和底线的页脚
  • 带 ViewPager 的 CollapsingToolbarLayout 内的片段不会向下滑动

    我有一个带有 CollapsingToolbarLayout 和 TabLayout 的活动 当我左右滑动时 它在片段之间完美移动 然而 当我尝试向下滚动 屏幕截图中的红色箭头 时 它会忽略它 我尝试向片段添加 ScrollView 但它没
  • 该证书在 ios 钥匙串中的颁发者无效

    钥匙串显示证书错误 gt 该证书的颁发者无效 请参阅屏幕截图 参考链接 gt 该证书的颁发者钥匙串无效 https stackoverflow com questions 28890084 this certificate has an i
  • 您可以在 asp:Menu 控件中有 2 个指向同一页面的 url 吗?

    我有一个 asp Menu 它包含一个指向的顶级菜单项http www example com one aspx http www example com one aspx 当您将鼠标悬停在顶级菜单项上时 它会显示一个下拉菜单 其中一个选项
  • 强制绝对 div 听父母的填充?

    这就是我的 HTML CSS现在好像 这就是我的want它看起来像 如何修改下面的 HTML CSS 使其按照我想要的方式显示 HTML div div div class update div div div CSS update wid
  • Sphinx 无法导入任何内容

    我正在尝试使用 sphinx 来记录我的项目 我在所有模块和文件中使用了 autodoc 字符串 我使用sphinx apidoc自动生成rst我的代码的文件 到目前为止 一切都很好 问题是sphinx 无法导入我的任何模块 即使我已将我的
  • 读取 post 请求值 HttpHandler

    我正在编写一个小型 Java 应用程序 它实现了一个从客户端接收 http post 命令的 http 服务 我用来实现所有这些的类是 com sun net 中的 HttpHandler 和 HttpServer 包裹 现在我正在实施一个
  • 如何将类型“UnityEngine.Texture2D”转换为“UnityEngine.Sprite”?

    您好 我尝试将纹理 2D 转换为图像 并且我无法使用原始图像 因为分辨率在手机中不匹配 但问题是图像没有纹理元素 如何在Image Sprite中转换UnityEngine Texture2D Image Profile protected
  • 默认情况下“git update-index --assume-unchanged”

    git 有没有办法得到结果git update index assume unchanged FILE NAME默认情况下在一组给定的文件上 例如 一个 git config 文件列出了默认情况下不跟踪更改的文件 这样我们在克隆存储库后就不
  • Android View.getDrawingCache返回null,仅null

    有人可以试着向我解释一下为什么吗 public void addView View child child setDrawingCacheEnabled true child setWillNotCacheDrawing false chi
  • DICOM图像的窗宽和中心计算

    DICOM 图像 CT 中的 重新缩放截距 和 重新缩放斜率 是什么 如何计算窗口宽度和窗口中心 应用重新缩放截距和斜率将图像的像素值转换为对应用程序有意义的值 例如 原始像素值可以存储设备特定值 该值仅在由生成它的设备使用时才有意义 将重
  • E/SQLiteLog(1893): (14) 无法打开 [00bb9c9ce4] 第 30176 行的文件

    我在用本教程 http www reigndesign com blog using your own sqlite database in android applications 将数据库导入我的应用程序 它在 API 10 上运行良好
  • 我的 php 错误日志文件为空

    如果我在 php ini 文件中启用 error log 选项 那么我在配置的错误文件中什么也得不到 并且 加载页面时与服务器的连接已重置 在浏览器 火狐 中 如果我禁用它 我会在浏览器中显示错误 我在 Windows 7 系统 64 位上
  • 在 R 中提取名字

    假设我的数据框中有一个人名向量 names lt c Bernice Ingram Dianna Dean Philip Williamson Laurie Abbott Rochelle Price Arturo Fisher Enriq
  • C# 中的浮点数学一致吗?是真的吗?

    不 这不是另一个 为什么是 1 3 0 3 1 问题 我最近读了很多关于浮点的文章 具体来说 如何相同的计算可能会得到不同的结果在不同的架构或优化设置上 对于存储重播的视频游戏来说 这是一个问题点对点网络 https gamedev sta
  • GridView:单击按钮时获取行的数据键

    当我在具有 OnClick 事件的行中有一个按钮时 如何获取 GridView 行的 DataKeyName 的值 在按钮的 OnClick 事件中 我想获取按钮所在行的 DataKeyName 这可能吗