zoukankan      html  css  js  c++  java
  • C# winform 屏蔽鼠标右键 spreadsheet Gear 屏蔽鼠标右键菜单

    今天用到spreadsheetGear 插件,然后右键有插件自己的菜单。都是英文的,而且还能打开新的窗体。嵌到程序里面,不太合适,所以着手屏蔽。

    刚开始用的Mouse_up,虽然能捕获事件,但是没有KeyPress事件的Handled属性。

    百度之,发现相对简单的方法。

    1.先让窗体类继承IMessageFilter接口
    2.在构造函数中添加:Application.AddMessageFilter(this);
    3.在代码中加入:

    public bool PreFilterMessage(ref System.Windows.Forms.Message MyMessage)
    {
        //不响应鼠标右键消息
        if(MyMessage.Msg>=516 && MyMessage.Msg<=517)
        {
            return true;
        }
        return false;
    }

    4. 你可以将Application.AddMessageFilter()放到任何你想起作用的地方,也随时可以Application.RemoveMessageFilter(this)

    按步骤即可成功屏蔽。

     屏蔽之后还有个问题,就是双击之后,系统自带的内容区的右键也被屏蔽了。无奈。。。

    想了个土办法,拖一个右键菜单控件,然后与控件的右键菜单属性进行绑定后,成功屏蔽。我太tm机智了。

  • 相关阅读:
    RFM模型
    mysql日期函数(时间函数)
    数据库探索
    anaconhda安装步骤
    mysql安装和环境配置
    mysql时间条件查询
    mysql自连接
    mysql查询注意事项(查询优化)
    mysql常见的保留字和反引号使用
    多表联合查询注意事项(索引)
  • 原文地址:https://www.cnblogs.com/xcong/p/3372640.html
Copyright © 2011-2022 走看看