项目中经常看到在输入金额时,会加逗号,最近在复习正则表达式,就联系下,界面如下:

aaarticlea/png;base64,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" alt="" />

首先,对上面的文本框输入值进行控制,只允许用户输入数字0-9,小数点和退格键,注册文本框的KeyPress事件,代码如下:

 //输入值只能在数字0-9之间,允许输入小数点和退格键
if ((e.KeyChar < '' || e.KeyChar > '') && e.KeyChar != && e.KeyChar != )
{
e.Handled = true;
} //第一位不能是0
if (txtMoney.SelectionStart==&&e.KeyChar=='')
{
e.Handled = true;
}

我想在光标离开文本框(其不再是窗体上的活动控件时,给用户输入值加逗号,注册Leave事件),代码如下:

 #region 光标离开时加上逗号
string sMsg = txtMoney.Text.Trim();
if (!string.IsNullOrEmpty(sMsg))
{
txtMoney.Text = Regex.Replace(sMsg, @"(?<=\d)(?=(\d{3})+(?!\d))", ",");
}
#endregion

代码中用到了正则表达式中的“环视”。

最后,在移入光标(文本框成为窗体的活动控件时,删除添加的逗号,注册Enter事件),代码如下:

 #region 光标移入时删除逗号
string sMsg = txtMoney.Text.Trim();
if (!string.IsNullOrEmpty(sMsg))
{
txtMoney.Text = sMsg.Replace(",", string.Empty);
}
#endregion

主要是复习下对环视的应用。

winform中文本框的一些案例的更多相关文章

  1. winform中文本框添加拖拽功能

    对一个文本框添加拖拽功能: private void txtFolder_DragEnter(object sender, DragEventArgs e) { if (e.Data.GetDataP ...

  2. C#-WinForm中文本框的中文乱码问题

    上面这句话可以解决textbox中的中文乱码问题   来自为知笔记(Wiz) 附件列表 QQ图片20151218124007.png

  3. winform中文本框,软键盘跟随

    private void textBox1_Click(object sender, EventArgs e) { //Control.MousePosition Point p = System.W ...

  4. (十六)c#Winform自定义控件-文本框哪里去了?-HZHControls

    官网 http://www.hzhcontrols.com 前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kww ...

  5. Silverlight中文本框添加回车事件后,换行无法清除的解决方法

    在开发Silverlight的项目中,为了更好的用户体验,我们常要给一些控件添加一些快捷键.然而,在Silverlight中当用户回车提交后,光标停留在文本框的第二行怎么也清除不掉,经过一段时间研究, ...

  6. (三十一)c#Winform自定义控件-文本框(四)

    前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. 开源地址:https://gitee.com/kwwwvagaa/net_winform_custom_control ...

  7. css中文本框与按钮对不齐解决方案

    我们先对对input标记设定样式,代码如下: html 代码 <form> <input type=”text” name=”text1” id=”text1” /> < ...

  8. JQuery中文本框获取焦点

    今天遇见这么一个小小的问题,就是文本框中需要输入内容才可以提交,如果没有输入就提示并使该文本框获得焦点! 这么一个简单的事情如果没有使用jQuery的话 是不是对象.focus()就可以了, 可是当我 ...

  9. IOS中文本框输入自动隐藏和自动显示

    uilabe和UIText扩展方法 +(UILabel*)LabWithFrame:(CGRect)_rect text:(NSString*)aText textColor:(UIColor*)aC ...

随机推荐

  1. C#中动态加载和卸载DLL

    在C++中加载和卸载DLL是一件很容易的事,LoadLibrary和FreeLibrary让你能够轻易的在程序中加载DLL,然后在任何地方卸载.在C#中我们也能使用Assembly.LoadFile实 ...

  2. UVa532 Dungeon Master 三维迷宫

        学习点: scanf可以自动过滤空行 搜索时要先判断是否越界(L R C),再判断其他条件是否满足 bfs搜索时可以在入口处(push时)判断是否达到目标,也可以在出口处(pop时)   #i ...

  3. 对PostgreSQL中tablespace 与 database, table的理解

    开始: 当前的tablesapce信息 pgsql=# select * from pg_tablespace; spcname | spcowner | spclocation | spcacl | ...

  4. Ectouch修改虚拟销售数量的方法

    1.参考:http://zhidao.baidu.com/link?url=5OEkRlKqtRcmnO6iyW2pq-gw1aj-1S6QdImmBkQZHHt6tcvT50aIf_1nibP3T6 ...

  5. delphi 取得汉字的第一个字母

    功能说明://取得汉字的第一个字母 function GetPYIndexChar( hzchar:string):char;begin  caseWORD(hzchar[1])shl8+WORD(h ...

  6. POJ 3026 Borg Maze

    Borg Maze Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7998   Accepted: 2675 Descrip ...

  7. java中接口的定义与实现

    1.定义接口     使用interface来定义一个接口.接口定义同类的定义类似,也是分为接口的声明和接口体,当中接口体由常量定义和方法定义两部分组成.定义接口的基本格式例如以下: [修饰符] in ...

  8. ABAP 日期时间函数(转)

    转自:http://www.sapjx.com/abap-datetime-function.html 函数名称 (内页-点击名称可查看操作) 函数说明 备注 FIMA_DATE_CREATE RP_ ...

  9. android147 360 程序锁fragment

    package com.itheima.mobileguard.fragment; import java.util.ArrayList; import java.util.List; import ...

  10. Keeplived 配制图解

    http://blog.csdn.net/tantexian/article/details/50056229