当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C# MaskedTextBox用法及代码示例


在 C# 中,MaskedTextBox 控件为表单上的用户输入(如日期、电话号码等)提供验证过程。换句话说,它用于提供区分正确和不正确的用户输入的掩码。 MaskedTextBox 类用于表示窗口屏蔽文本框,并提供不同类型的属性、方法和事件。它的定义如下系统.Windows.窗体命名空间。
此类TextBox 控件的增强版本,它支持用于接收或拒绝用户输入的声明性语法,并且当该控件在运行时显示时,它将掩码表示为提示字符和可选文字字符的序列。在 C# 中,您可以使用两种不同的方式在 Windows 窗体中创建MaskedTextBox:

1. Design-Time:这是创建MaskedTextBox的最简单方法,如下步骤所示:

  • 步骤1:创建一个windows窗体,如下图所示:
    Visual Studio -> 文件 -> 新建 -> 项目 -> WindowsFormApp

  • 第2步:接下来,将 MaskedTextBox 控件从工具箱拖放到窗体中。

  • 步骤3:拖放后,您将转到MaskedTextBox控件的属性,根据您的要求修改MaskedTextBox。

    输出:

2.运行时:它比上面的方法稍微棘手一些。在此方法中,您可以借助MaskedTextBox 类提供的语法以编程方式创建MaskedTextBox 控件。以下步骤显示如何动态设置创建MaskedTextBox:

  • 步骤1:使用MaskedTextBox 类提供的MaskedTextBox() 构造函数创建MaskedTextBox 控件。
    // Creating a MaskedTextBox control
    MaskedTextBox mbox = new MaskedTextBox(); 
    
  • 第2步:创建MaskedTextBox控件后,设置MaskedTextBox类提供的MaskedTextBox控件的属性。
    // Setting the properties 
    // of MaskedTextBox
    mbox.Location = new Point(374, 137); 
    mbox.Mask = "000000000"; 
    mbox.Size = new Size(176, 20); 
    mbox.Name = "MyBox"; 
    mbox.Font = new Font("Bauhaus 93", 18); 
    
  • 步骤3:最后使用以下语句将此 MaskedTextBox 控件添加到表单中:
    // Adding MaskedTextBox 
    // control on the form 
    this.Controls.Add(mbox); 
    

    例子:

    
    using System; 
    using System.Collections.Generic; 
    using System.ComponentModel; 
    using System.Data; 
    using System.Drawing; 
    using System.Linq; 
    using System.Text; 
    using System.Threading.Tasks; 
    using System.Windows.Forms; 
      
    namespace WindowsFormsApp36 { 
      
    public partial class Form1 : Form { 
      
        public Form1() 
        { 
            InitializeComponent(); 
        } 
      
        private void Form1_Load(object sender, EventArgs e) 
        { 
            // Creating and setting the 
            // properties of the Label 
            Label l1 = new Label(); 
            l1.Location = new Point(413, 98); 
            l1.Size = new Size(176, 20); 
            l1.Text = " Example"; 
            l1.Font = new Font("Bauhaus 93", 12); 
      
            // Adding label on the form 
            this.Controls.Add(l1); 
      
            // Creating and setting the 
            // properties of the Label 
            Label l2 = new Label(); 
            l2.Location = new Point(242, 135); 
            l2.Size = new Size(126, 20); 
            l2.Text = "Phone number:"; 
            l2.Font = new Font("Bauhaus 93", 12); 
      
            // Adding label on the form 
            this.Controls.Add(l2); 
      
            // Creating and setting the 
            // properties of the MaskedTextBox 
            MaskedTextBox mbox = new MaskedTextBox(); 
            mbox.Location = new Point(374, 137); 
            mbox.Mask = "000000000"; 
            mbox.Size = new Size(176, 20); 
            mbox.Name = "MyBox"; 
            mbox.Font = new Font("Bauhaus 93", 18); 
      
            // Adding MaskedTextBox 
            // control on the form 
            this.Controls.Add(mbox); 
        } 
    } 
    } 

    输出:

Constructor

构造函数 说明
MaskedTextBox() 此构造函数用于初始化 MaskedTextBox 类的新实例。
MaskedTextBox(MaskedTextProvider) 此构造函数用于使用指定的自定义掩码语言提供程序初始化 MaskedTextBox 类的新实例。
MaskedTextBox(String) 此构造函数用于使用指定的输入掩码初始化 MaskedTextBox 类的新实例。

Properties

属性 说明
AsciiOnly 获取或设置一个值,该值指示MaskedTextBox 控件是否接受 ASCII 字符集之外的字符。
AutoSize 此属性用于获取或设置一个值,该值指示控件是否根据其内容调整大小。
BackColor 该属性用于获取或设置控件的背景颜色。
BorderStyle 该属性指示控件的边框样式。
Font 该属性用于获取或设置控件显示的文本的字体。
ForeColor 该属性用于获取或设置控件的前景色。
Height 该属性用于获取或设置控件的高度。
Location 该属性用于获取或设置 MaskedTextBox 控件的左上角相对于其窗体左上角的坐标。
Name 该属性用于获取或设置控件的名称。
TabStop 此属性用于获取或设置一个值,该值显示用户是否可以按 TAB 键为 NumericUpDown 提供焦点。
Size 该属性用于获取或设置控件的高度和宽度。
Text 此属性用于获取或设置要在 RichTextBox 控件中显示的文本。
Visible 该属性用于获取或设置一个值,该值指示是否显示该控件及其所有子控件。
Width 该属性用于获取或设置控件的宽度。
Multiline 此属性用于获取或设置一个值,该值指示这是否是多行MaskedTextBox 控件。
TextAlign 此属性用于获取或设置屏蔽文本框控件中文本的对齐方式。
TextMaskFormat 此属性用于获取或设置一个值,该值确定格式化字符串中是否包含文字和提示字符。
SelectedText 此属性用于获取或设置 MaskedTextBox 控件中的当前选择。
PromptChar 此属性用于获取或设置用于表示 MaskedTextBox 中没有用户输入的字符。
ReadOnly 此属性用于获取或设置一个值,该值指示文本框中的文本是否为只读。
MaxLength 此属性用于获取或设置用户可以键入或粘贴到文本框控件中的最大字符数。 MaskedTextBox 不支持此属性。
Lines 此属性用于获取或设置多行配置中的文本行。 MaskedTextBox 不支持此属性。


相关用法


注:本文由纯净天空筛选整理自ankita_saini大神的英文原创作品 C# | MaskedTextBox Class。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。