TextBox只允许输入数字,最大长度为10

       //TextBox.ShortcutsEnabled为false  禁止右键和Ctrl+v
private void txtNumber_KeyPress(object sender, KeyPressEventArgs e)
{
//只允许输入数字,粘贴数字
if (!(Char.IsNumber(e.KeyChar) || e.KeyChar == (char)))
{
e.Handled = true;
}
}
//允许Ctrl+v粘贴数字
private void txtNumber_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyData == (Keys.Control | Keys.V))
{
if (Clipboard.ContainsText())
{
try
{
Convert.ToInt64(Clipboard.GetText()); //检查是否数字
((TextBox)sender).SelectedText = Clipboard.GetText().Trim(); //Ctrl+V 粘贴
if (((TextBox)sender).TextLength > )
{
((TextBox)sender).Text = ((TextBox)sender).Text.Remove(); //TextBox最大长度为10 移除多余的
}
}
catch (Exception)
{
e.Handled = true;
//throw;
}
}
}
}

第二种办法:

1、先创建一个ToolStripMenuItem,添加 菜单列表 “复制” 和 “粘贴” 。

2、设置同一事件txtToolStripMenuItem_Click

       //复制粘贴处理
private void txtToolStripMenuItem_Click(object sender, EventArgs e)
{
string txtname = ((ToolStripMenuItem)sender).Text;
if (txtname.Equals("复制"))
{
SendKeys.SendWait("^c"); //Ctrl + C
}
if (txtname.Equals("粘贴"))
{
SendKeys.SendWait("^v"); //Ctrl + V
}
}

3、TextBox 属性 ContextMenuStrip 绑定 ToolStripMenuItem

4、TextBox添加事件txtOrderID_KeyPress

       //只允许输入数字,粘贴数字
private void txtOrderID_KeyPress(object sender, KeyPressEventArgs e)
{
//只允许输入数字,粘贴数字
if (!(Char.IsNumber(e.KeyChar) || e.KeyChar == (char) || e.KeyChar == (char) || e.KeyChar == (char)))
{
e.Handled = true;
}
try
{
if (e.KeyChar == (char))
{
Convert.ToInt64(Clipboard.GetText()); //检查是否数字
Clipboard.SetText(Clipboard.GetText().Trim()); //去空格
}
}
catch (Exception)
{
e.Handled = true;
//throw;
}

5、ToolStripMenuItem 菜单 “复制” 和 “粘贴” 创建 同一Click事件。

       //复制粘贴处理
private void txtToolStripMenuItem_Click(object sender, EventArgs e)
{
string txtname = ((ToolStripMenuItem)sender).Text;
if (txtname.Equals("复制"))
{
SendKeys.SendWait("^c"); //Ctrl + C
}
if (txtname.Equals("粘贴"))
{
SendKeys.SendWait("^v"); //Ctrl + V
}
}

c# TextBox只允许输入数字,禁用右键粘贴,允许Ctrl+v粘贴数字的更多相关文章

  1. 2019-3-22c# TextBox只允许输入数字,禁用右键粘贴,允许Ctrl+v粘贴数字

    TextBox 禁止复制粘贴 ShortcutsEnabled =false TextBox只允许输入数字,最大长度为10 //TextBox.ShortcutsEnabled为false 禁止右键和 ...

  2. 限制TextBox只允许输入数字和字母

    设置TextBox控件属性 ImeMode=Disable ShortcutsEnabled=False VB.NET Private Sub TextBox1_KeyDown(sender As O ...

  3. 如何屏蔽ctrl + v 粘贴事件,鼠标右键粘贴事件

    通常在自己的APP里的密码框,验证码框需要屏蔽复制,粘贴,怎么办呢? 有三种方法: 1 hook 此方法是最完全的,但由于hook是全局的,容易影响到其它代码. 2 子类化文本框, 重写OnPaste ...

  4. Asp.Net MVC @Html.TextBox 只允许输入数字问题

    转到Html.TextBox()看可以看出 Html.TextBox()方法,创建文本框[<input type="text"/>],并且可以带上name,value和 ...

  5. textbox只允许输入数字

    private void txtUserId_KeyPress(object sender, KeyPressEventArgs e) { //如果输入的不是数字键,也不是回车键.Backspace键 ...

  6. VB.NET TextBox 只允许输入1-100之间的整数 简洁篇

    Dim Str As String = "" Private Sub txtRecond_KeyUp(sender As System.Object, e As System.Wi ...

  7. ASP.Net TextBox控件只允许输入数字

    原文:ASP.Net TextBox控件只允许输入数字 1.1.在Asp.Net TextBox 控件的 OnKeyPress 事件中指定输入键盘码必须为数字: <asp:TextBox ID= ...

  8. c#textBox控件限制只允许输入数字及小数点,是否为空

    c#textBox控件限制只允许输入数字及小数点 转载 //判断按键是不是要输入的类型. if (((int)e.KeyChar < 48 || (int)e.KeyChar > 57) ...

  9. 使用Javascript限制文本框只允许输入数字

    很多时候需要用到限制文本框的数字输入,试过许多方法,都不太理想,遂决定自己实现一个来玩玩.曾经使用过的方法通过onkeydown事件来控制只允许数字: <input onkeydown=&quo ...

随机推荐

  1. Linux SELinux命令

    getsebool与setsebool工具 说明:SELinux规范了许多boolean数值清单档案,提供开启或关闭功能存取项目,而这些值都存放在/selinux/booleans/目录内相关档案,这 ...

  2. [转]Android输出Log到文件

    前言:开发中遇到mx4这款机型Eclipse联调不上,logcat看不了,需要输出生成文件查看调试信息.网上搜了下,功能很完善了.startService和过滤输出信息需要自己添加设置,另外注意添加权 ...

  3. Tomcat 内存和线程配置优化

    1. tomcat 的线程配置参数详情如下: 修改conf/server.xml中的<Connector .../> 节点如下: <Connector port="8080 ...

  4. C++STL之迭代器2

    在学习c++ STL的时候,整天碰到迭代器,也整天用,但是,到底它是个什么东西,很多人没有一个认识.这里我通过几个小的DEMO,来看看迭代器.首先我实现了一个十分简陋的vector类: templat ...

  5. C++STL之迭代器

    迭代器 迭代器提供对一个容器中的对象的访问方法,并且定义了容器中对象的范围.迭代器就如同一个指针.事实上,C++的指针也是一种迭代器.但是,迭代器不仅仅是指针,因此你不能认为他们一定具有地址值.例如, ...

  6. Webpack+React+ES6入门指南[转]

    React无疑是今年最火的前端框架,github上的star直逼30,000,基于React的React Native的star也直逼20,000.有了React,组件化似乎不再步履蹒跚,有了Reac ...

  7. Genesis 2.8-2.12

    And the LORD God planted a garden eastward in Eden; and there he put the man whom he had formed. 9 A ...

  8. hihocoder-1389&&2016北京网赛07 Sewage Treatment(二分+网络流)

    题目链接: Sewage Treatment 时间限制:2000ms 单点时限:2000ms 内存限制:256MB 描述 After years of suffering, people could ...

  9. find命令错误提示路径必须在表达式之前

    在某些版本的linux下,通过find查找当前目录下所有后缀名jpg的文件,命令为find ./ -iname *.jpg 会出现“find: 路径必须在表达式之前”的错误提示.解决的方法有两种 a. ...

  10. 推荐一款开源的C#TCP通讯框架

    原来收费的TCP通讯框架开源了,这是一款国外的开源TCP通信框架,使用了一段时间,感觉不错,介绍给大家 框架名称是networkcomms 作者开发了5年多,目前已经停止开发,对于中小型的应用场景,够 ...