C#获取鼠标在listview右键点击单元格的内容方法
程序员文章站
2022-04-21 08:24:51
当我们右键点击listview控件时,可以得到选择的项的各个文本内容。
现在我们要求只获取右键点击时的单元格的文本内容。
方法如下:
1、定义全局的鼠标状态
poi...
当我们右键点击listview控件时,可以得到选择的项的各个文本内容。
现在我们要求只获取右键点击时的单元格的文本内容。
方法如下:
1、定义全局的鼠标状态
point m_mbrpt;//鼠标右键点击时point
2、处理鼠标按下时在listview的消息
private void listview1_mousedown(object sender, mouseeventargs e) { // if (e.button==mousebuttons.right) { // 得到屏幕鼠标的坐标,转换为列表控件的坐标标 m_mbrpt = listview1.pointtoclient(control.mouseposition); } }
3、右键菜单--复制项的消息
private void copyitem_click(object sender, eventargs e) { //复制指定表格单元格的内容 if (listview1.selecteditems.count <= 0) { messagebox.show("没有选中交易信息!", "提示", messageboxbuttons.ok, messageboxicon.information); return; } // 得到屏幕鼠标的坐标,转换为列表控件的坐标标(在鼠标按下时就去处理并保存) //point pt = listview1.pointtoclient(m_mbrpt); listviewitem lstrow = listview1.getitemat(m_mbrpt.x, m_mbrpt.y); system.windows.forms.listviewitem.listviewsubitem lstcol = lstrow.getsubitemat(m_mbrpt.x, m_mbrpt.y); string strtext = lstcol.text; //设置到粘贴板 setclipboardtext(strtext); }
4、设置粘贴板内容
public void setclipboardtext(string strtext) { try { clipboard.setdataobject(strtext); } catch (system.exception ex) { messagebox.show(ex.message, "提示", messageboxbuttons.ok, messageboxicon.error); } }
以上这篇c#获取鼠标在listview右键点击单元格的内容方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
上一篇: 中科院院长白春礼呼吁制定国家大数据战略