分享
 
 
 

使用正则表达式进行数据有效性校验的TextBox控件

王朝other·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

从TextBox集成,加入正则表达式校验数据的功能,应该有一定用处,我在CSDN的共享软件里面提交上去了,有兴趣的哥们可以去看看。这里粘上源代码,最起码让我这样的低手看看,^_^

file://RegexTextBox.CS

/**

* 创建于 2004年 2月17日

* 作者:杨雨田

* 电子邮箱:blue_bat@163.com

*

* 任何人都可以免费使用本控件,以及免费获得此控件的源代码

* 同时您可以任意修改此控件并用于任何目的

* 但如果您由于使用此控件并由此获得了商业利润

* 希望您能够给我邮寄一盒三元人民币左右的国产香烟作为您对我

* 艰苦劳动的回报。同时欢迎广提意见,多多批评!!!

*

* 有关正则表达式内容请查阅MSDN或相关书籍

*

*/

//导入程序使用的.net类库

using System;

using System.Drawing;

using System.Windows.Forms;

using System.Text.RegularExpressions;

//命名空间RegexEditor,以后将继续扩充....

namespace RegexEditor

{

/** RegexTextBox继承自TextBox控件

* 能够通过正则表达式对数据进行有效性校验

*/

public class RegexTextBox : System.Windows.Forms.TextBox

{

private string strRegex;//用于校验的正则表达式

private string strVerifyError;//校验错误的提示

private bool bIsVerifySuccess;//是否检验成功

private bool bIsDisplayError;//是否显示错误

private bool bToVerify;//是否进行校验

//属性:用于校验的正则表达式

public string RegexString

{

get

{

return strRegex;

}

set

{

strRegex = value;

}

}

//属性:检验错误的提示

public string VerifyErrorString

{

get

{

return strVerifyError;

}

set

{

strVerifyError = value;

}

}

//属性:是否检验成功

public bool IsVerifySuccess

{

get

{

return bIsVerifySuccess;

}

set

{

bIsVerifySuccess = value;

}

}

//属性:是否显示校验错误

public bool IsDisplayError

{

get

{

return bIsDisplayError;

}

set

{

bIsDisplayError = value;

}

}

public bool ToVerify

{

get

{

return bToVerify;

}

set

{

bToVerify = value;

}

}

//构造函数

public RegexTextBox()

{

InitializeComponent();

}

//初始化变量以及控件属性

void InitializeComponent()

{

RegexString = "";

VerifyErrorString = "";

IsVerifySuccess = true;

IsDisplayError = false;

ToVerify = false;

this.Name = "RegexTextBox";

this.Validating += new System.ComponentModel.CancelEventHandler(this.OnValidatingData);

}

//私有过程:校验数据

private bool VerifyData()

{

IsVerifySuccess = Regex.IsMatch(this.Text,RegexString);

return IsVerifySuccess;

}

//事件处理函数:校验数据

private void OnValidatingData(object sender, System.ComponentModel.CancelEventArgs e)

{

if(!ToVerify)//不需要校验直接退出

{

e.Cancel = false;

return;

}

if(!VerifyData())//校验不正确..

{

if(this.IsDisplayError)//要求显示校验错误提示..

{

MessageBox.Show(VerifyErrorString,"警告:");

}

else//要求不显示校验错误提示..

{

this.SelectAll();

}//end if

e.Cancel = true;

}

else//校验正确..

{

e.Cancel = false;

}//end if

}

}//End Class

}//End NameSpace

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有