winform文本框不能粘贴、复制和屏蔽右键
有3个常用方法
1.MouseMove事件中,使选不中
private void textBox3_MouseMove(object sender, MouseEventArgs e)
{
if (this.textBox3.SelectionLength > 0)
{
this.textBox3.SelectionStart = this.textBox1.TextLength;
this.textBox3.SelectionLength = 0;
}
}
2.
新建一个类,取名为TextBox.cs,代码如下:
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace frmLogin
{
public class TextBoxEx : System.Windows.Forms.TextBox
{
//
//构造函数默认的
//
protected override void WndProc(ref Message m)
{
if (m.Msg != 0x007B && m.Msg != 0x0301 && m.Msg != 0x0302)
{
base.WndProc(ref m);
}
}
}
}
0x007B:鼠标右键 message ID
0x0301:复制 (包括ctrl+c) message ID (其实这个判断不要,因为设置textbox的PasswordChar属性 实际上已经屏蔽了复制功能)
0x0302:粘贴(包括ctrl+v) message ID
更多的message ID 可以参考http://liuhao-27.blog.163.com/blog/static/115851126200941425617778/
或查阅API手册
当然,在这里的我们的工作还没有结束,我们需要在Login.Designer.cs中将txtPassword引用这个新的对象,
this.txtPassword = new System.Windows.Forms.TextBox();
改为:
this.txtPassword = new frmLogin.TextBoxEx();
3.textBox.ShortcutsEnabled 设置为false
winform文本框不能粘贴、复制和屏蔽右键的更多相关文章
- Winform文本框只能输入限定的文本
比如WInform中的文本框只能输入数字活着字母和退格键,e.kaychar(按下键盘的值)
- WinForm 文本框验证
这是一个自定义控件,继承了TextBox,在TextBox基础上添加了4个属性(下载): 1.ControlType 文本框需要验证的类型 2.ControlTypeText 显示的文字(只读) 3. ...
- c# winform文本框数字,数值校验
文本框数字,数值校验 public void DigitCheck_KeyPress(object sender, KeyPressEventArgs e) { e.Handled = !char.I ...
- 多个文本框点击复制 zClip (ZeroClipboard)有关问题
<script type="text/javascript" src="js/jquery.min.js"$amp;>amp;$lt;/script ...
- C# Winform 文本框默认提示信息
private string Notes = "提示文本"; private void textBox1_Leave(object sender, EventArgs e) { / ...
- Winform 文本框多线程赋值
delegate void SetTextCallback(string text); private void showClientMsg(string text) { // InvokeRequi ...
- .net(c#) winform文本框只能输入数字,不能其他非法字符
private void textBox3_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e) { //阻止从键盘输入键 ...
- 关于winform文本框怎么实现html的placeholder效果
winfrom默认是不支持这种操作的,此时需要重写控件操作,具体代码如下: public class TextBoxEx : TextBox { public String PlaceHolderSt ...
- C#,WinForm文本框录入内容判断
|| e.KeyChar > ) && (e.KeyChar != ) && (e.KeyChar != ) && (e.KeyChar != ) ...
随机推荐
- ie上画圆饼图
概述 主要运用到CSS3的transform.js.jq实现饼状图效果 详细 代码下载:http://www.demodashi.com/demo/10579.html 一.准备工作 1.主要运用到C ...
- 我的硬盘安装ArchLinux+xorg+gnome+美化
整个安装需要联接网络!现在的xorg为6.8.1,gnome为2.8.0 看了大家为了使用gnome,出现了那么多问题!这里我就推荐一个发行版,再安装上gnome2.8. ...
- 我遇到了Hibernate异常
真是郁闷,今天想用Hibernate的实现对数据库的增删查改,但是就是报异常不断啊!呵呵,为什么?就是在主键的问题上,我用主键的生成形式是:Sequence时就报IllegalArgumentExce ...
- iOS10 完美降级 iOS9.3.2,保留全部数据
本篇文章由:http://xinpure.com/downgrade-ios10-perfect-ios9-3-2-retention-of-all-data/ iOS 10 Beta版尝鲜 前段时间 ...
- HDUOJ----4006The kth great number(最小堆...)
The kth great number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65768/65768 K (Java/Oth ...
- "Only the original thread that created a view hierarchy can touch its views.” 解决方法
这个主要总是,开启的线程和 UI 线程(主线程)不是同一个线程.可以Runnable方式避免,如下例所示就可以解决这个问题了. public static void updateText(Activi ...
- JMeter学习笔记--详解JMeter逻辑控制器
JMeter使用逻辑控制器来决定采样器的处理顺序 简单控制器(Simple Controller):存储设备(将某些采样器归组) 循环控制器(Loop Controller:设置循环次数 仅一次控制器 ...
- socket概述和字节序、地址转换函数
一.什么是socket socket可以看成是用户进程与内核网络协议栈的编程接口. socket不仅可以用于本机的进程间通信,还可以用于网络上不同主机的进程间通信. socket API是一层抽象的网 ...
- jenkins 执行ssh 远程linux执行命令
1.远程机器编写脚本: 脚本名称为: /app/jboss/jboss-as/logs/ALL_SERVICE_STOP.sh 功能为:停止某个服务器某个目录下面的所有应用 #!/bin/bash p ...
- ps抠图简单方法
选中对象后保存对象到新的图层方法.ctrl+c,ctrl+v即可 1 使用魔术棒 适用范围:图像和背景色色差明显,背景色单一,图像边界清晰. 方法意图:通过删除背景色来获取图像. 方法缺陷:对散乱的毛 ...