C#获取鼠标在listview右键点击单元格的内容方法
作者:jingxian 发布时间:2023-10-26 12:40:47
标签:鼠标,listview,右键
当我们右键点击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);
}
}


猜你喜欢
- 1. 数据构造索引2个文档到 hotel 索引中:PUT /hotel/_doc/1{ "title": &
- ListView是开发中最常用的控件了,但是总是会写重复的代码,浪费时间又没有意义。最近参考一些资料,发现一个万能ListView适配器,代
- 随着目前微信越来越火,所以研究微信的人也就越来越多,这不前一段时间,我们公司就让我做一个微信公众号中问卷调查发红包功能,经过一段时间的研究,
- 前言从来没接触过flutter,我将在这里记录下我的flutter学习踩坑历程。安装就从安装开始叭,官网链接在此。先遵照官网教程来叭。系统要
- 1.创建项目时选择redis依赖2.修改配置文件,使用SpringBoot就避免了之前很多的xml文件2.1学过redis的同学都知道这个东
- 导读Lombok:可以让你的POJO代码特别简洁,不止简单在BO/VO/DTO/DO等大量使用,还有设计模式,对象对比等MybatisPlu
- ListBox控件的使用: 1)控件属性 Items SelectedItems SelectioModes 2)数据绑定 DataSour
- 请求转发的三种方式SpringMVC请求转发区别于重定向,请求转发地址栏不会发生改变、只发送一次请求、能携带原有的参数,但只可以在同一个服务
- NameServer1.架构设计消息中间件的设计思路一般都是基于主题订阅与发布的机制,RocketMQ也不例外。RocketMQ中,消息生产
- 前情提要本文中提供了九种方式获取resources目录下文件的方式。其中打印文件的方法如下: /**
- 最近在做的工作要用到本地方法,需要在Java中加载不少动态链接库(以下为方便延用Windows平台下的简写dll,但并不局限于Windows
- 首先打开 Visual Studio Installer 可以看到vs2022 只支持安装4.6及以上的版本,如图所示。那么该如何安装4.6
- 一个项目中肯定会存在很多共用的查询数据,对于这一部分的数据,没必要每一个用户访问时都去查询数据库,因此配置二级缓存将是非常必要的。Mybat
- 概述:App几乎都离不开与服务器的交互,本文主要讲解了flutter网络请求三种方式 flutter自带的HttpClient、 第三方库h
- 本文实例为大家分享了两种java实现FTP文件上传下载的方式,供大家参考,具体内容如下第一种方式:package com.cloudpowe
- foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合。foreach元素的属性主要有item,index,colle
- DrawerLayout顾名思义就是一个管理布局的。使用方式可以与其它的布局类类似。DrawerLayout带有滑动的功能。只要按照draw
- 对于服务器端开发人员而言,调用第三方接口获取数据,将其“代理”转化并返给客户端几乎是家常便
- 本文实例讲述了Android中WebView图片实现自适应的方法。分享给大家供大家参考。具体实现方法如下:WebSettings ws =
- 介绍Java状态模式(State Pattern)是一种面向对象的设计模式,它将对象的状态封装成独立的状态对象,并将对象的行为与状态对象解耦