当前位置:网站首页>WinForm的控件二次开发
WinForm的控件二次开发
2022-08-03 04:19:00 【ViperL1】
一、输入栏非空验证
①首先要新建一个类库,然后在其中额外新建组件类
②在类库中添加控件命名空间的引用(System.Windows.Forms)
③将基类改为需要继承的控件(如TextBox)
public partial class SuperTextBox : TextBox
④在编辑区拖放errorProvider
⑤编写警告方法并关联错误提示
public bool CheckEmpty()
{
if(this.Text=="")
{
this.errorProvider.SetError(this,"不能为空"); //从属的组件,提醒内容
return true
}
else
{
this.errorProvider.SetError(this,empty);
return false;
}
}
⑥直接在项目中以普通控件的方法应用即可
同时也必须在函数体中调用CheckEmpty();才能使其生效。
二、利用正则表达式实现复杂验证
基于上述项目,重新编写验证方法
public bool BeginCheckData(string regularExpress, string errorMsg)
{
if(CheckEmpty() == false)
return false;
Regex objRegex = new Regex(regularExpress,RegexOptions.IgnoreCase); //忽略大小写
if(!objRegex.IsMatch(this.Text))
{
this.errorProvider.SetError(this,"验证不通过");
return true
}
else
{
this.errorProvider.SetError(this,empty);
return false;
}
}
三、其他方案调用自定义控件
将控件方案生成的.dll代码移动到需要调用的项目之中,然后在工具箱中进行引用
边栏推荐
猜你喜欢
随机推荐
【翻译】开发与生产中的Kubernetes修复成本对比
DC-3靶场搭建及渗透实战详细过程(DC靶场系列)
深圳线下报名|StarRocks on AWS:如何对实时数仓进行极速统一分析
conda常用命令合集
MySQL【约束】
C# WPF设备监控软件(经典)-上篇
(2022杭电多校五)1010-Bragging Dice (思维)
DDL操作数据库、表、列
工程制图第九章作业
3.张量运算
DC-5靶场下载及渗透实战详细过程(DC靶场系列)
计网试卷概念
OpenFOAM提取等职面并计算面积
刚上线就狂吸70W粉,新型商业模式“分享购”来了,你知道吗?
MCM箱模型建模方法及大气O3来源解析
install ambari
RequestContextHolder
软件开发的最大的区别是什么?
Live | StarRocks technology insider: low base dictionary global optimization
Test drive: project management module - curd development project