當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。