C# WinForm —— 17 MaskedTextBox 介绍

news2024/11/29 10:57:38

1. 简介

本质是文本框,但它可以通过掩码来区分输入的正确与否,可以控制输入的格式、长度
主要应用场景是:需要格式化输入信息的情况

2. 常用属性

属性解释
(Name)控件ID,在代码里引用的时候会用到,一般以 mtxt 开头
AsciiOnly是否只接受ASCII字符作为有效输入
BeepOnError键入无效字符时,控件是否发出提示音
CutCopyMaskFormat指示在将文本复制到剪贴板时是否包含原义字符和/或提示字符。
ExcludePromptAndLiterals:仅复制输入文本
IncludePrompt:复制文本,不复制掩码字符/提示字符
IncludeLiterals(默认):复制文本和原义字符
IncludePromptAndLiterals:复制文本和原义字符、提示字符
Dock是否要绑定到容器的边框
Enabled是否启用该控件
HidePromptOnLeave当控件没有焦点时,是否显示提示字符,默认不显示
HideSelection当编辑控件失去焦点时,是否隐藏选定内容
InsertKeyMode指示掩码文本框输入字符的键入模式
Mask设置控制此控件允许的输入的字符串,点击后面 三个点的符号 开始设置:
在这里插入图片描述
在这里插入图片描述
掩码的字符代号:
0:必选*,0-9 之间的任意一个数字
9:可选, 数字或空格
#:可选 ,数字或空格,如果掩码中该位置为空白,在Text属性中将把它呈现为一个空格。允许使用加号 (+) 和减号 (-)
L:ASCII字母,必选*
&:字符,必选*
C:字符
A:字母

自定义掩码在这里插入图片描述
PasswordChar指示为密码输入显示的字符,保密字符
PromptChar指示用作占位符的字符,默认是下划线
ReadOnly能否更改编辑控件中的文本
RejectInputOnFirstFailure如果为true,则只要有一个字符与掩码不符,输入文本就被拒绝;否则,文本中的每个字符按单个输入逐个处理
Text与控件关联的文本
TextAlign文本的对齐方式
TextMaskFormat从Text属性中返回字符串时是否包含原义字符和/或提示字符

3. 事件

属性解释
MaskChanged当Mask属性的值更改时发生
MaskInputRejected当输入字符或文本不符合掩码规范时发生
TextChanged在控件上更改Text属性的值时引发的事件

4. 示例

设置MaskedTextBox的 Mask 属性值为 移动电话号码:
在这里插入图片描述

在加载GUI时,初始化 MaskedTextBox 的属性:

private void FrmMaskedTextBox_Load(object sender, EventArgs e)
{
	mtxtYouBian.BeepOnError = true; // 输入错误提示音
	mtxtYouBian.CutCopyMaskFormat = MaskFormat.IncludePromptAndLiterals;
	mtxtYouBian.RejectInputOnFirstFailure = true;
	mtxtYouBian.TextMaskFormat = MaskFormat.IncludePromptAndLiterals;  // 输入文本/掩码和提示符中定义的任意文本字符
	mtxtYouBian.PasswordChar = '*';  //设置密码字符
	mtxtYouBian.PasswordChar = '\0';  //取消密码字符
}

点击按钮,将用户输入到MaskedTextBox 中的值显示到 普通文本框中:

private void button1_Click(object sender, EventArgs e)
{
	txtValue.Text = mtxtYouBian.Text;
}

运行,当输入字母时,无法输入,并响错误提示音
在这里插入图片描述
当输入数字:
在这里插入图片描述
当修改属性值 mtxtYouBian.TextMaskFormat = MaskFormat.IncludePrompt; 后,再次运行:
在这里插入图片描述
当修改属性值 mtxtYouBian.TextMaskFormat = MaskFormat.IncludeLiterals; ,Mask 属性值中加一个 ‘ / ’ 后,再次运行:
在这里插入图片描述
当修改属性值 mtxtYouBian.TextMaskFormat = MaskFormat.ExcludePromptAndLiterals; 后,再次运行:
在这里插入图片描述

ExcludePromptAndLiterals只包含 用户输入的文本
IncludeLiterals包含 用户输入的文本 以及 掩码中定义的任意文本字符
IncludePrompt包含 用户输入的文本 以及 提示字符的任意实例
IncludePromptAndLiterals包含 用户输入的文本、掩码中定义的任意文本字符以及提示字符的任意实例

参考:2023年C#之WinForm零基础教程50讲
winform之MaskedTextBox(掩码文本控件)
Microsoft Learn / .Net / System.Windows.Forms / MaskFormat 枚举

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

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

相关文章

Ansible常用变量【下】

转载说明:如果您喜欢这篇文章并打算转载它,请私信作者取得授权。感谢您喜爱本文,请文明转载,谢谢。 前言 在上一篇文章《Ansible常用变量【上】》中,学习了Ansible常用变量的前半部分,放了个五一假&#x…

USB转串口芯片CH341、CH372、CH374、CH375等的电路及 PCB 设计的重要注意事项

前言 USB芯片的电路和PCB设计参考及注意事项,含CH34X、CH37X等系列芯片的电路设计说明。涉及工作稳定性和抗干扰以及USB-HOST带电热插拔。基于 USB 芯片的电路及 PCB 设计的重要注意事项 版本:2E 1、摘要 本文主要针对以下因电路及 PCB 设计不佳而引起…

浮点数的由来及运算解析

数学是自然科学的皇后,计算机的设计初衷是科学计算。计算机的最基本功能是需要存储整数、实数,及对整数和实数进行算术四则运算。 但是在计算机从业者的眼中,我们知道的数学相关的基本数据类型通常是整型、浮点型、布尔型。整型又分为int8&a…

点是否在三角形内C++源码实现

原理 思路: 面积和: abc obcaocabo,应该有更简洁的方法,但是这个方法思路更简单 代码实现: 注意二维向量的叉乘后,是垂直于平面的向量,相当于z为0三维向量叉乘,所以只有z维度有值,xy0. flo…

【Nginx <一>⭐️】Nginx 的初步了解以及安装使用

目录 👋前言 👀一、 Nginx 介绍 🌱二、 安装使用 💞️ 三、 总结 📫四、 章末 👋前言 小伙伴们大家好,前段时间主要在学习 Elasticsearch 相关的知识,花了两周的时间吧&#x…

排序-冒泡排序(bubble sort)

冒泡排序(Bubble Sort)是一种简单的排序算法,它重复地遍历待排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成…

JavaWeb--13Mybatis(2)

Mybatis(2) 1 Mybatis基础操作1.1 需求和准备工作1.2 删除员工日志输入参数占位符 1.3 新增员工1.4 修改员工信息1.5 查询员工1.5.1 根据ID查询数据封装 1.5.3 条件查询 2 XML配置文件规范3 MyBatis动态SQL3.1 什么是动态SQL3.2 动态SQL-if更新员工 3.3 …

决策树学习记录

对于一个决策树的决策面: 他其实是在任意两个特征基础上对于所有的点进行一个分类,并且展示出不同类别的之间的决策面,进而可以很清楚的看出在这两个特征上各个数据点种类的分布。 对于多输出的问题,在利用人的上半张脸来恢复下半…

排序-选择排序(selection sort)

选择排序(selection sort)的工作原理非常简单:开启一个循环,每轮从未排序区间选择最小的元素,将其放到已排序区间的末尾。选择排序的主要特点包括: 时间复杂度: 无论最好、最坏还是平均情况&…

UE5 FARFilter筛选器使用方法

UE5 查找资源时可以用FARFilter进行筛选,之前可以用ClassNames进行筛选,但是5.1之后就弃用这个属性改成ClassPaths属性 构造一个FTopLevelAssetPath对象需要两个FName参数,但是没找到应该传什么 查找官方文档,明显是错误的&#x…

企业级WEB服务Nginx安装

企业级WEB服务Nginx安装 1. Nginx版本和安装方式 Mainline version 主要开发版本,一般为奇数版本号,比如1.19Stable version 当前最新稳定版,一般为偶数版本,如:1.20Legacy versions 旧的稳定版,一般为偶数版本,如:1.18Nginx安装可以使用yum或源码安装,但是推荐使用源码编译安…

苹果cms:伪静态设置教程

官方默认的网站模式是动态模式,动态模式下链接中自带有“index.php”想要去除网站链接中的index.php,首先需要开启网站的模式为伪静态模式。这样比动态模式那一长串的链接看着也舒服一些,最重要的是迎合搜索引擎的喜好加快收录提高排名。 1、…

Docker:1Panel安装及使用

1、简述 1Panel是一款现代化、开源的Linux服务器运维管理面板,于2023年3月推出,深度集成WordPress和Halo,一键完成域名绑定、SSL证书配置等操作,帮助用户实现快速建站,支持用户通过Web浏览器轻松管理Linux服务器&…

SpringBoot集成Curator实现Zookeeper基本操作

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 Zookeeper是一个Ap…

全场景智能终端RK3288主板在智能垃圾回收项目的应用,支持鸿蒙,支持全国产化

全场景智能终端主板AIoT-3588A推出的智能化垃圾回收项目,旨在解决城市化进程中日益突出的垃圾处理问题。智能垃圾分类箱具备触屏操作、自动称重、分类投放以及电子语音播报提示等多项功能,居民能够经过分类积分卡、手机扫码、人脸识别等多种途径进行投放…

新书首发 |《低代码在制造行业数字化实践》正式出版!

得帆云出书了! 得帆云团队编写的《低代码在制造行业数字化实践》正式出版! 毫无疑问,对传统开发技术而言,低代码技术是一场技术革命,低代码技术将深刻地影响和改变企业的数字化转型和发展道路。 《低代码在制造行业…

全球家装水管十大名牌排行榜

现代家居装修中,水管都是采用埋墙式施工,为了保证日后的安全用水,最好就选用好的家装水管品牌,避免日后出现爆裂等现象,好的家装水管的质量才有所保障,下面就和下面分享一下全球家装水管十大名牌排行榜。 …

如何在创建之前检测 Elasticsearch 将使用哪个索引模板

作者:来自 Elastic Musab Dogan 概述 Elasticsearch 提供两种类型的索引模板:旧(legacy)索引模板和可组合 (composable) 索引模板。 Elasticsearch 7.8 中引入的可组合模板旨在替换旧模板,两者仍然可以在 Elasticsear…

一文掌握gRPC

文章目录 1. gRPC简介2. Http2.0协议3. 序列化-Protobuf4. gRPC开发实战环境搭建5. gRPC的四种通信方式(重点)6. gRPC的代理方式7. SprintBoot整合gRPC 1. gRPC简介 gRPC是由google开源的高性能的RPC框架。它是由google的Stubby这样一个内部的RPC框架演…

钉钉群直播回放保存下来方法

想要永久留存那些不容错过的钉钉群直播精华吗?你是否曾在群直播结束后急切地希望重温那些信息满载的讲解,或是那些激动人心的讨论时刻?现在,你不再需要担忧这些宝贵内容的丢失。这里,我们将带领你通过一些简单的步骤&a…