C# WinForm —— 17 MaskedTextBox 介绍

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 枚举

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LNMP 环境下 Nginx 1.26.0 开启 HTTP/3 QUIC 支持

前几天 Nginx 1.26.0 主线版发布了,明月总算抽出时间更新了,那么自然的也要尝试一下开启 HTTP/3 QUIC 支持了,今天就给大家分享一下。对于我们的网站来说开启 HTTP/3 QUIC 最大的好处是页面载入速度的提升,尤其是在支持 HTTP/3 QU…

怎么批量下载视频?DY视频爬虫在线提取采集工具

短视频批量下载工具,具有多种模块和功能,方便用户快速批量下载短视频。该软件的详细介绍: 功能模块介绍: 一. 搜索词批量搜索下载 视频关键词添加:支持添加多个视频关键词进行全平台视频搜索。历史去重:…

以目录创建的conda环境添加到jupyter的kernel中

场景:由于某些原因,服务器上的conda环境不能通过--name的方式创建,只能通过指定目录即-p的方式,在这种情况下该环境在conda env list中没有显示,无法在jupyter kernel中搜到,只能手动添加。 1.进入环境 # …

在树莓派4b上运行OpenHarmony3.2 Release

在树莓派4b上运行OpenHarmony3.2 Release 本篇主要讲解如何将OpenHarmony3.2 Release在树莓派4b上运行起来。 硬件资源 硬件是一台树莓派4b-8G,sd卡容量16G。 树莓派资料请参照官网: https://www.raspberrypi.com/products/raspberry-pi-4-model-b/ …

安卓手机数据恢复全攻略:从备份到专业软件一网打尽!

随着科技的飞速发展,我们的生活中越来越离不开手机。然而,在使用手机的过程中,我们可能会遇到数据丢失的问题。对于安卓手机用户来说,如何有效地恢复丢失的数据是一个值得探讨的问题。本文将为您介绍安卓手机数据恢复的全攻略&…

【静态分析】软件分析课程实验A2-常量传播和Worklist求解器

Tai-e官网: 概述 | Tai-e 参考: https://www.cnblogs.com/gonghr/p/17979609 -------------------------------------------------------- 1 作业导览 为 Java 实现常量传播算法。实现一个通用的 worklist 求解器,并用它来解决一些数据…

部分树上问题及图的联通性(图论学习总结部分内容)

文章目录 前言三、部分树上问题及图的联通性最小生成树知识点例题 e g 1 : eg1: eg1: 走廊泼水节(克鲁斯卡尔思想的灵活运用) e g 2 : eg2: eg2: B-Picnic Planning e g 3 eg3 eg3:L - Classic Problem&…

无线麦克风哪个好?无线麦克风如何选择?2024高品质产品推荐整理

​在如今的数字化时代,无线麦克风已经逐渐渗透到我们生活的方方面面。无论是专业的自媒体人、带货主播,还是日常生活中的普通用户,无线麦克风都发挥着不可或缺的作用。而在选择无线麦克风时,收音降噪效果和性价比无疑是大家最为关…

Electron下复用窗口关闭、最小化和最大化按钮

在macOS下,创建窗口时设置: new BrowserWindow({titleBarStyle: hidden, // 关闭默认的titlebartrafficLightPosition: { x: 18, y: 18 }, // 交通灯距离窗口左侧和窗口上侧的像素距离 })效果: 在window下可以这样设置, new Br…

Java基于Geth1.8实现节点同步、合约部署,以及踩坑记录—主节点控制台卡死、节点同步出错的解决方案

前言:本文将从一个区块链入门小白的视角,来一步步的讲解如何实现区块链数据上链,链上数据查询,geth多节点同步。以及讲解在上链过程中,我踩过的坑及其解决方案。如果有不对的地方,还请大佬指教!…

白酒:酒精度数对白酒贮存老熟的影响研究

云仓酒庄豪迈白酒作为一种品质的白酒,其酒精度数对白酒贮存老熟的影响是一个值得探讨的话题。酒精度数作为白酒的一个重要参数,不仅决定了酒体的基本风格,更在很大程度上影响了白酒在贮存过程中的变化和老熟过程。 首先,酒精度数的…

华为配置智能无损网络综合

配置智能无损网络综合示例 适用产品和版本 安装了P系列单板的CE16800、CE6866、CE6866K、CE8851-32CQ8DQ-P、CE8851K系列交换机V300R020C00或更高版本。 安装了SAN系列单板的CE16800、CE6860-SAN、CE8850-SAN系列交换机V300R020C10或更高版本。 CE6860-HAM、CE8850-HAM系列交换…

HR人才测评:应变能力与岗位胜任力素质测评

什么是应变能力 应变能力在职场中可以说是必备的素质之一,它指的是从业者需要长期活动或者是行为来迎接即将到来的挑战,做提前的思考,以适应未来的挑战,具有随机应变的意思。在外界还未发生变化或者是已经发生变化时,…

python(环境安装)搭建、pycharm安装、背景改为白色详细文章

安装python环境 1、下载python安装包 Welcome to Python.org(官网链接) 2、点击下载、windows、python3.12.3 安装python 执行安装程序、安装选项 选择下面两项 翻译 Use admin privieges when installing py.exe是使用administrator超级管理员用户安…

MySQL从入门到高级 --- 6.函数

文章目录 第六章:6.函数6.1 聚合函数6.2 数学函数6.3 字符串函数6.4 日期函数6.4.1 日期格式 6.5 控制流函数6.5.1 if逻辑判断语句6.5.2 case when语句 6.6 窗口函数6.6.1 序号函数6.6.2 开窗聚合函数6.6.3 分布函数6.6.4 前后函数6.6.5 头尾函数6.6.6 其他函数6.7 …

core.sshd.xxxxxx文件过大

背景 【紧急】【应用分组】应用: 接入点服务, 分组: 观众预发, ip: xx.xx.xx.xx 【/】,磁盘使用率已连续2次大于90% [当前值:100%]。报警时间: 2024-05-13 14:07:01 原因 登录机器查看,发现根目录下有大量的崩溃文件将 / 打满 处理 1, 删…

SSL证书助力工业和信息化领域数据安全,确保传输数据的保密性、完整性

工业和信息化领域数据包括工业数据、电信数据和无线电数据等,是国家重要基础性战略资源,随着工业领域数字化、网络化、智能化加速提质升级,数据泄露、勒索攻击等网络风险日益增加,由此加强工业和信息化领域数据安全管理&#xff0…

正点原子[第二期]Linux之ARM(MX6U)裸机篇学习笔记-15.1,2,3-GPIO中断控制实验

前言: 本文是根据哔哩哔哩网站上“正点原子[第二期]Linux之ARM(MX6U)裸机篇”视频的学习笔记,在这里会记录下正点原子 I.MX6ULL 开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了正点原子教学视频和链接中的内容。…

山姆·奥特曼接受All-in Podcast采访

前言 在“All-in Podcast”播客中,OpenAI的CEO山姆奥特曼广泛讨论了人工智能的多个关键议题。他涉及了推理计算、开源模型的发展、GPT-5语言模型的进展,并对AI监管、全民基本收入(UBI)政策、智能体如何改变应用交互,以…

Springboot自动装配源码分析

版本 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.4.RELEASE</version><relativePath/> <!-- lookup parent from repository --> </par…