ContextMenuStrip右键菜单 获取关联控件、判断点击
来源:互联网 发布:淘宝搜索结果不精确 编辑:程序博客网 时间:2024/06/11 19:56
ContextMenuStrip右键菜单 获取关联控件、判断点击
(2010-07-02 18:01:22)contextmenu
strip
右键菜单
获取关联控件
判断点击
it
分类: 技术文章很少做WINFORM的项目
今天偶有触及,遇到一个使用ContextMenuStrip的小问题
研究得不算深,不过也解决一些网上经常有人问的小问题。
首先ContextMenuStrip和ContextMenu的区别是版本不同,Vs05中ContextMenuStrip替代了ContextMenu的,并且更强大,但是依然保留了ContextMenu,所以会看到两个类型同时出现,不必茫然,就用ContextMenuStrip吧。
动态创建ContextMenuStrip并关联到控件的方法如下
调用LoadMenustrip(TheControl)后就会在TheControl上关联一个ContextMenuStrip,同时还为这个ContextMenuStrip的ItemClicked绑定一个事件:ms_ItemClicked,也就是在点菜单上的某一项事引发的事件
ms_ItemClicked 事件处理,在这里sender获得的是这个ContextMenuStrip对象,e获得的是触发事件的Item参数,那么就有很多人在问如何获得触发这个事件的ContextMenuStrip相对应关联的控件呢?(也就是关联这个ContextMenuStrip的那个控件)
其实很简单,ContextMenuStrip有一个属性SourceControl,他就是和这个ContextMenuStrip相关联的那个控件了,类型自己转换一下就可以了。
另外,我没有找到任何获取触发这个事件的Item的索引和其他信息的方法,可以获取文本,但是很多时候我们不可能通过文本判断,因此,我用了直接比对对象的方法,
((ContextMenuStrip)sender).Items[1] == e.ClickedItem
也就是获取ContextMenuStrip本身的各个Item比对触发事件的Item。
除了获取关联控件,代码中的其他代码主要是处理剪贴板,和本文关系不大,不做介绍!
其实关于控制文本框的复制、粘贴、剪切等 WINFORM的TextBox都有对应的方法,可以不用控制剪贴板,控制剪贴板还要控制光标位置,比较麻烦点。
复制 TextBox.Copy();
粘贴 TextBox.Paste();
剪切 TextBox.Cut();
全选 TextBox.SelectAll();
- ContextMenuStrip右键菜单 获取关联控件、判断点击
- c#判断右键菜单(ContextMenuStrip)是从哪个控件弹出来的方法
- c#判断右键菜单(ContextMenuStrip)是从哪个控件弹出来的方法
- c#判断右键菜单(ContextMenuStrip)是从哪个控件弹出来的方法
- C# ContextMenuStrip 点击右键不显示菜单,只点击左键显示菜单
- 鼠标右键功能 contextMenuStrip 控件
- ContextMenuStrip在点击事件里,获取绑定的控件源
- DataGridView 的右键菜单(ContextMenuStrip)
- PopupMenu和ContextMenuStrip右键菜单使用
- DataGridView 的右键菜单(ContextMenuStrip)
- C#如何使用右键菜单【contextMenuStrip】
- arcengine onmouseup使用contextmenustrip添加右键菜单
- [转]DataGridView 的右键菜单(ContextMenuStrip)
- DataGridView 的右键菜单(ContextMenuStrip)
- C# 系统应用之ListView控件 (三).添加ContextMenuStrip右键菜单打开删除文件
- 在WPF里面获取右键弹出菜单(ContextMenu)的鼠标点击源(Owner)控件
- 在WPF里面获取右键弹出菜单(ContextMenu)的鼠标点击源(Owner)控件
- C#高低文菜单(右键菜单)ContextMenuStrip用法总结
- 设计模式:桥接模式|菜鸟教程
- Uranus开发小记-2
- Joint Trajectory Map
- Eclipse下使用Maven创建项目出现的archetype错误
- 读《哈佛商学院管理全书》一
- ContextMenuStrip右键菜单 获取关联控件、判断点击
- L2_005
- QCom MSM MDP显示驱动一些点的简记
- 如何使keyup事件延迟处理
- Dom4j修改xml文件
- java集合类源码分析 ArrayList
- Java 使用redis
- Linux 下编译FFmpeg 支持x264, x265
- 服务器与主机之间的文件传输SCP