private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if( e.ColumnIndex==-1)
            {
                MessageBox.Show("这里是行头");
            }
        }
 
    private void dataGridView1_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            if(e.Button==MouseButtons.Right)
            {
                //加入显示右键弹出菜单
            }
        }
 
可以肯定,楼上的代码都未经测试。注意:楼主要的是在行头,就是标题行上点击右键,出现快捷菜单。
而且,CellClick 是不响应右键的,所以,只有在 CellMouseClick 事件中才能响应右键.(RowHeaderMouseClick 也有响应,但是不知道为什么,我的 VS2005 没有反应,所以不推荐使用)
private void dgv_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            // 判断是否右键点击
            if (e.Button == MouseButtons.Right)
            {
                // 得到点击所在的行和列信息。相关函数查 MSDN
                DataGridView.HitTestInfo hitinfo = dgv_verify.HitTest(e.X, e.Y);
                // 如果 RowIndex < 0,就是标题行了。 
                if (hitinfo.RowIndex < 0)
                {
                    // 如果你只要指定的列显示菜单,则加入对 hitinfo.ColumnIndex 的判断
                    contextMenuStrip1.Show(MousePosition.X, MousePosition.Y);
                }
            }
        }

===============================================================
以上代码经过测试,在 VS2005 和 VS2008 下运行正常。
有什么问题,再问我吧。

来自:http://bbs.csdn.net/topics/370259768

C# DataGridView,右键单击RowHeader时显示右键菜单怎么做?的更多相关文章

  1. 【winfrom-右击快捷菜单】右击或左击时显示快捷菜单

    拖个contextMenuStrip控件 按钮的MouseDown事件: private void treeView1_MouseDown(object sender, MouseEventArgs ...

  2. winform的datagridview单元格输入限制和右键单击datagridview单元格焦点跟着改变

    在datagridview的EditingControlShowing事件里面添加代码: if (this.dgv_pch.Columns[dgv_pch.CurrentCell.ColumnInde ...

  3. 如何设置鼠标右键单击返回ppt上一页

    点击“powerpoint选项”,选择“高级” 将“幻灯片放映”选项下“鼠标右键单击时显示菜单(E)”前面的钩去掉.图为处理过的.

  4. c# DataGridView在使用DataSource时,只显示指定的列或禁止自动生成列

    可通过设置DataGridView控件的AutoGenerateColumns属性来处理. //禁止自动生成列,以下场景会用到:数据源的列超过需要展示的列 this.gridDevice.AutoGe ...

  5. jquery禁用右键单击功能屏蔽F5刷新

    1.禁用右键单击功能$(document).ready(function() { $(document).bind("contextmenu",function(e) { aler ...

  6. jquery禁用右键单击、F5刷新

    1.禁用右键单击功能 $(document).ready(function() { $(document).bind("contextmenu",function(e) { ale ...

  7. Ztree右键事件,如何让指定的子节点不显示右键菜单。

    这里我记录一下我自己的解决方案: 1.首先在Ztree的setting设置中加一个鼠标右键回调函数onRightClick,然后在加一个beforeRightClick(具体含义可以看官方API) v ...

  8. WIN10家庭版桌面右键单击显示设置出现ms-settings:display或ms-settings:personalization-background解决办法[原创]

    最近,笔者的笔记本卸载oracle数据库,注册表里面删除了不少相关信息,没想到担心的事情还是来了!桌面右键单击显示设置出现ms-settings:display或ms-settings:persona ...

  9. Flex中如何通过showAllDataTips属性使鼠标移动到图表时显示所有的数据Tips的例子

    原文 http://blog.minidx.com/2008/11/10/1616.html 接下来的例子演示了Flex中如何通过showAllDataTips属性,使鼠标移动到图表时显示所有的数据T ...

随机推荐

  1. elasticsearch时间格式DateFormat的含义

    时间格式 枚举(或者英文)format pattern 含义 custom - 自定义属性 none - 不转化 basic_date yyyyMMdd 基本时间 basic_date_time   ...

  2. Linux常用的操作指令

    1.pwd-显示当前所在位置 2.cd-进入当前目录 3.cd..-返回上一级目录 4..ls命令参数选项有很多,ls也是经常使用到的命令.如果不清楚命令的使用方式可以直接 ls --help来查看 ...

  3. DBLINK引起的SQL性能问题

    最近发现报表系统上有一存储过程越来越慢,在数据库中查询后,发现有以下条SQL --优化前:耗时>1h select c.policyno, c.endorseno, r.item_code, s ...

  4. Go:类型断言

    一.基本介绍 类型断言:由于接口是一般类型,不知道具体类型,如果要转成具体类型,就需要使用类型断言. 如果希望将一个空接口类型重新转换成对应的类型,那么需要使用类型断言,能转换成功是因为这个空接口原先 ...

  5. 自定义ngCloak

    场景: 一个非常复杂的表单页面,页面有5个标签,第五个标签中又有5个标签,也就是说一共有9个标签,每个标签中都有一个表单,表单之间相互关联.所有表单项(包括复合的),有80多个数据.全部东西写在一个h ...

  6. Java:Md5加密

    文章来源:https://www.cnblogs.com/hello-tl/p/9139334.html import java.security.MessageDigest; public clas ...

  7. mysql EXPLAIN Join Types 手册解释 及数据实操

     第一部分:名称解释 文档地址 https://dev.mysql.com/doc/refman/5.7/en/explain-output.html EXPLAIN Join Types: The ...

  8. 基于flask的网页聊天室(三)

    基于flask的网页聊天室(三) 前言 继续上一次的内容,今天完成了csrf防御的添加,用户头像的存储以及用户的登录状态 具体内容 首先是添加csrf的防御,为整个app添加防御: from flas ...

  9. SHELL二十篇(读书笔记)

    一.文件安全与权限 1.系统默认情况下建立文件与目录的权限: 系统默认情况下建立文件与目录的权限是: #vi /etc/bashrc 可以看到一般用户是002  root用户是022 说明:一般用户默 ...

  10. Python编译错误总结

    1.TypeError: object() takes no parameters 如果你出现了这个报错,请检查你的__init__函数名或者其定义有没有写错.一般是把__init__写成了__int ...