| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5374 人关注过本帖
标题:【求助】屏蔽TextBox默认右键菜单
只看楼主 加入收藏
红尘一剑
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-7-27
结帖率:0
收藏
已结贴  问题点数:10 回复次数:8 
【求助】屏蔽TextBox默认右键菜单

各位大侠:
         如果要屏蔽TextBox的默认右键菜单部分菜单项,同时保留部分菜单项(如:复制,粘贴,删除),是要继承该控件进行重写还是可以直接设定呢? 有没相关的实例,谢谢!
搜索更多相关主题的帖子: TextBox 菜单 
2010-09-17 15:44
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:5 
当然得重写啦.
一般的textbox右键,也就复制,粘贴,删除这几个功能,你还想屏蔽什么?

飘过~~
2010-09-17 15:59
红尘一剑
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-7-27
收藏
得分:0 
    C#中的TextBox控件添加后他的邮件菜单有:从右到左的阅读顺序;显示Unicode控制字符;插入Unicode控制字符,这才个我不需要的菜单项,我想屏蔽这三项菜单项
2010-09-17 16:16
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
程序代码:
    public partial class NoPraseTextBox : System.Windows.Forms.TextBox
    {
        private const int WM_GETTEXT = 0x000d;
        private const int WM_COPY = 0x0301;
        private const int WM_PASTE = 0x0302;
        private const int WM_CONTEXTMENU = 0x007B;
        private const int WM_RBUTTONDOWN = 0x0204;
        public NoPraseTextBox()
        {
            InitializeComponent();
            //
            //   TODO:   在此处添加构造函数逻辑
            //
        }
        protected override void WndProc(ref   Message m)
        {
            if (m.Msg == WM_RBUTTONDOWN)
                return;//WM_RBUTTONDOWN是为了不让出现鼠标菜单
            base.WndProc(ref   m);
        }


        protected override void OnPaint(PaintEventArgs pe)
        {
            base.OnPaint(pe);
        }
    }

这段代码是自定义控件中的,目的是不显示右键菜单,你看看可以修改不,呵呵,我也没搞过。

飘过~~
2010-09-17 17:08
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
要不你先屏蔽了,再自己写一个,呵呵

飘过~~
2010-09-17 17:14
c1_wangyf
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:7
帖 子:665
专家分:2832
注 册:2010-5-24
收藏
得分:5 
右键菜单项的某项visible=false,也就是不可见;或者右键菜单项的某项enable=false,也就是不可用,不知道是不是和你想像的一样?!
2010-09-17 21:41
红尘一剑
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-7-27
收藏
得分:0 
谢谢四楼,我测试一下,六楼的方法对于默认菜单不可用,呵呵,当初我也这么觉得,感谢关注!
2010-09-18 13:40
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
六楼的是针对.NET里面自带那个右键菜单而言,要改变系统默认的,就得重写

飘过~~
2010-09-18 22:37
daisytoo
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2011-4-26
收藏
得分:0 
以下是引用bygg在2010-9-18 22:37:08的发言:

六楼的是针对.NET里面自带那个右键菜单而言,要改变系统默认的,就得重写
那请问这位大虾,我现在就是需要将右键的菜单进行重写,变成一个图标+文字的形式.但是不需要屏蔽任何菜单选项。请问这个应该怎么写?先谢谢啦~~
2011-04-26 16:50
快速回复:【求助】屏蔽TextBox默认右键菜单
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025799 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved