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. (转)用@Resource注解完成属性装配

    http://blog.csdn.net/yerenyuan_pku/article/details/52858878 前面我们讲过spring的依赖注入有两种方式: 使用构造器注入. 使用属性set ...

  2. leetcode_935. Knight Dialer_动态规划_矩阵快速幂

    https://leetcode.com/problems/knight-dialer/ 在如下图的拨号键盘上,初始在键盘中任意位置,按照国际象棋中骑士(中国象棋中马)的走法走N-1步,能拨出多少种不 ...

  3. vscode 打开新文件不替换旧文件

    设置 "workbench.editor.enablePreview": false

  4. python基础一 day6 文件操作

    读写只会进行两步, r+模式下写读 seek是按字节去找的 for line in f: for循环是一行一行的读取出来 strip默认去空格和换行符 空格.制表符.换行符.回车.换页垂直制表符和换行 ...

  5. VC无窗口控制台程序

    VC无窗口控制台程序 #pragma comment(linker,"/subsystem:\"Windows\" /entry:\"mainCRTStartu ...

  6. 暑假集训 || 树DP

    树上DP通常用到dfs https://www.cnblogs.com/mhpp/p/6628548.html POJ 2342 相邻两点不能同时被选 经典题 f[0][u]表示不选u的情况数,此时v ...

  7. web.config中配置数据库连接的两种方式

    在ASP.NET中有两种配置数据库连接代码的方式,它们分别是 appSettings 和 connectionStrings .在使用 appSettings 和 connectionStrings ...

  8. oslo.messaging

    oslo.messaging oslo.messaging库为OpenStack各个项目使用RPC和事件通知(Event Notification)提供了一套统一的接口.代码库位于https://gi ...

  9. 算法导论 第一章and第二章(python)

    算法导论 第一章 算法     输入--(算法)-->输出   解决的问题     识别DNA(排序,最长公共子序列,) # 确定一部分用法     互联网快速访问索引     电子商务(数值算 ...

  10. sprintboot + mybaits + mysql + html5 + thymeleaf 个人笔记

    参考:https://github.com/daleiwang/moxi service @Mapper 与 @Select 等 @Mapper似乎是一个myBaits 注解,表示将java方法和sq ...