C# 通过正则表达式来限制控件输入有效性

界面上允许用户输入的控件,大多是有一定限定的,比如电话号码,只允许11的数字,比如一些算法参数有取值范围限定,比如只允许[1,255]等,这种情况如果等用户输入运行后再在后台验证数据的有效性,不仅低效率而且繁琐,dev有一些控件则支持正则表达式,可以限定用户输入,这样就会很方便,这节就举例讲解两个dev常用且支持正则的控件TextEdit和GridControl。

01

TextEdit

TextEdit是dev中常用的文本编辑框

<dxe:TextEditWidth="150"HorizontalAlignment="Left"Mask="[1-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5]"MaskType="RegEx"Text="{Binding MinGrayContrast, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"ToolTip="Value must in range [1,255]" />

这里将文本输入的有效值限定到[1,255]

02


GridControl

GridControl类似于wpf默认控件库的datagrid,但是这个控件的作用强大的多,这里重点还是举例说明它正则的用法:

<dxg:GridControl  Grid.Row="0" Grid.Column="1" MaxHeight="500" ItemsSource="{Binding PointList, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" FontSize="14" Grid.RowSpan="3"HorizontalAlignment="Left"  VerticalAlignment="Top"  Margin="0" AllowLiveDataShaping="True" ><dxg:GridControl.View><dxg:TableView ShowTotalSummary="True" AllowMoveColumnToDropArea="False" AllowGrouping="False" AutoExpandOnDrag="False" ShowDragDropHint="False" ShowGroupPanel="False" AllowColumnMoving="False" AllowResizing="False" RowIndicatorContentTemplate="{StaticResource rowIndicatorContentTemplate}" Header="datashow" /></dxg:GridControl.View><dxg:GridColumn  Header="ID" FieldName="ID"   Width="80"/><dxg:GridColumn  Header="X(mm)" FieldName="Col"   Width="80"><dxg:GridColumn.EditSettings><dxe:TextEditSettings MaskType="RegEx" Mask="[1-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5]"/></dxg:GridColumn.EditSettings></dxg:GridColumn><dxg:GridColumn  Header="Y(mm)" FieldName="Row"   Width="80"/><dxg:GridColumn  Header="Z(um)" FieldName="Z"  Width="80"/></dxg:GridControl>

03


效果演示

92ace97fcf7f66df08d886f83cfed83f.gif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/297626.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

easyui数据请求两个url_jQuery Easyui datagrid连续发送两次请求问题

XXXXXX.datagrid({url: "${pageContext.request.contextPath}/xx/xx/xx,});用上述方式动态加载datagrid的数据时&#xff0c;通过net监听&#xff0c;发现调用了两遍XX方法&#xff0c;目前的解决方案是&#xff0c;将url放到datagrid初始化的时候执行。$(#XXXX).datagrid…

C# Winform编程之Button

参考了这篇文章&#xff1a; http://www.cnblogs.com/qianlifeng/archive/2010/04/13/1710869.html 我的代码&#xff1a; JButton.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.…

电热水器和插座之间的相亲故事

2019独角兽企业重金招聘Python工程师标准>>> 回到武汉&#xff0c;租房&#xff0c;然后发现原来的热水器不出水。让房产公司派师傅过来修理&#xff0c;终究还是放弃治疗了。不久&#xff0c;安装了一个新的电热水器。 我喜出望外&#xff0c;等了两个周&#xff0…

mysql in优化_MySQL 探秘: 1 整体架构

新开坑&#xff0c;计划做一系列专辑。由于 MySQL 源码太庞大&#xff0c;不可能面面俱到&#xff0c;先从丁奇《MySQL 实战 45 讲》[1] 案例开始入手&#xff0c;case by case 来做分享。同时强烈推荐丁奇的课&#xff0c;真的是受益匪浅&#xff0c;感谢感谢~~最新版本己经是…

清华姚班/智班2020级新生来了!中国奥数新晋“一姐”在列,湖南、湖北人数最多...

全世界只有3.14 % 的人关注了爆炸吧知识乾明 金磊 发自 凹非寺量子位 报道 | 公众号 QbitAI清华姚班/智班&#xff0c;又双叒叕纳一批英才。根据教育部公示的保送生拟录取名单的信息&#xff0c;清华大学姚班/智班2020年已拟定录取31名应届生&#xff0c;他们都是来自各省的顶级…

JS动态添加span等标签

今天在程序当中需要动态的往页面中添加span标签&#xff0c;同时需要设置span的文本&#xff0c;本人的JS不好&#xff0c;就从网上找了不少资料&#xff0c;多数是一样的做法&#xff0c;如下大体代码所示&#xff1a; function addTag() {var div document.createElement(&q…

成长 | 《大厂晋升指南》学习总结(下)

【学习总结】| Edison Zhou上一篇总结了面评技巧和学习方法部分&#xff0c;本篇总结做事方法和转向提升部分。温馨提示&#xff1a;文中的贴图均来自极客时间《大厂晋升指南》课程。1做事方法概要关于做事能力&#xff0c;有三条业界达成共识的判断标准&#xff0c;分别是闭环…

小学学校计算机教室使用计划,小学电脑室工作计划

以下是小编整理的2014小学电脑室工作计划、学校工作计划等&#xff0c;更多工作计划范文请登陆出国留学工作计划范文网(www.liuxue86.com/gongzuojihua/xuexiao/)一、指导思想:为了搞好学校信息技术教育教学管理工作,提高信息技术教学水平,以教育部制定的《中小学信息技术课程建…

自动以及手动清除手机垃圾文件

1.自动清除手机垃圾文件。 法1&#xff1a;用蓝牙传送一个大于手机内存的文件到手机内存中&#xff0c;手机会提示储存空间不足&#xff0c;自动清理一些隐藏的垃圾文件。 法2&#xff1a;传一个比较大的文件&#xff08;我的机子是15【已用】117【未用】132M&#xff09;&…

ubuntu流量监控_linux - 实时流量监控

前言有时候发现Linux主机的流量突然大涨&#xff0c;想要查看对应的IP是哪个&#xff0c;这时候就会用到iftop这个工具。iftop是类似于top的实时流量监控工具。可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等。安装Debian/Ubuntu/Deepinsudo apt updat…

在SD/MMC卡中可读写的FAT文件系统

2019独角兽企业重金招聘Python工程师标准>>> FAT文件系统 关于eLua中FAT文件系统的实现是使用了来自Elm Chan的一个很好的FatFS文件包。它可以在读写模式中处理FAT12,FAT16和FAT32文件系统。而且它打包了很多功能通过封装的形式。跟ROM文件系统一样它也与C库集成在一…

iphone4 短信截获

所谓的短信截获&#xff0c;可以被法度提前接管到&#xff0c;经过过滤以及响应的处理惩罚&#xff0c;然后发送到手机的收件箱中。 ios3上的短信截获经由过程可以经由过程一些私有的api即可完成&#xff0c;网上的教程也较多&#xff0c;这里不在反复。 前段时候在调研的ios4上…

hql取满足条件最新一条记录_MySql 之一条查询sql的执行过程

每当我把一条查询sql语句写完了&#xff0c;并且执行完得到想要的结果。这时我就在想为什么我写这样的一条sql语句&#xff0c;就能给我查询出我想要的结果&#xff0c;为什么我写了update就能更新一条语句&#xff1f;它们的执行过程是什么样的&#xff1f;它们的原理是什么&a…

高糊马赛克秒变高清,表情帝:这还是我吗?

全世界有3.14 % 的人已经关注了爆炸吧知识来源&#xff1a;机器之心参与&#xff1a;魔王、杜伟有了这个工具&#xff0c;我们终于能够看到马赛克下的那张脸了。给出一张高糊人脸照片&#xff0c;你能用它做什么&#xff1f;杜克大学近期的一项研究可以将高糊人脸照片转换成清晰…

diy计算机组装注意事项,自己组装电脑要注意什么?DIY老司机教你装机注意事项...

相比品牌机&#xff0c;组装电脑的优势在于个性化的DIY硬件定制&#xff0c;让玩家可以自由选择适合自己的配置&#xff0c;可以说可玩度非常高。如今&#xff0c;电脑硬件设计已经十分人性化&#xff0c;网上还有很多直播教程&#xff0c;用视频的方式直观地教大家装机&#x…

Dapr + .NET Core实战(三)状态管理

状态管理解决了什么分布式应用程序中的状态可能很有挑战性。例如&#xff1a;应用程序可能需要不同类型的数据存储。访问和更新数据可能需要不同的一致性级别。多个用户可以同时更新数据&#xff0c;这需要解决冲突。服务必须重试 与数据存储交互 时发生的任何短期暂时性错误。…

Apache 2.0性能优化—MPM的选择与配置

Apache 2.0性能优化—MPM的选择与配置谈到Apache&#xff0c;大多数系统管理员对其稳定版1.3印象颇深。虽然Apache 2.0的系列开发版早已由Alpha、Beta发展到现在的GA&#xff08;General Availability&#xff09;版&#xff0c;但是一些人潜意识里还认为开发版并非可用于生产环…

emeditor正则表达式_掌握EmEditor正则表达式语法,大大提升工作效率

缙哥哥非常懒&#xff0c;当遇到重复的事情时&#xff0c;就喜欢通过批量处理来解决&#xff0c;而文本用的是 EmEditor 程序&#xff0c;EmEditor 正则表达式语言基于 Perl 正则表达式语法&#xff0c;所以通过掌握EmEditor正则表达式语法&#xff0c;大大提升工作效率。文字所…

Building JavaScript Games for Phones Tablets and Desktop(3)-创造一个游戏世界

2019独角兽企业重金招聘Python工程师标准>>> 创造一个游戏世界 这章教会你如何通过内存中储存的信息创造一个游戏世界。介绍了基本类型和变量并且这些变量是如何储存和改变信息的。接下来&#xff0c;你会看到如何用对象储存更复杂的信息&#xff0c;里面包含成员变…

IE6.0、IE7.0 、FireFox 在样式中的不同写法.doc

IE6.0、IE7.0 、FireFox 在样式中的不同写法 2009年3月26日 15:44:27 发布:hugo 或许你一直在抱怨为什么要专门为IE和FF写不同的CSS&#xff0c;为什么IE这样让人头疼&#xff0c;然后一边写css&#xff0c;一边咒骂那个可恶的M$ IE。其实对于css的标准支持方面&#xff0c;IE并…