我制作了一个蒙版文本框,用于使用蒙版(999)000-0000 保存数字,我只想在标签中显示数字,但是当我这样做时,它还复制了parantheses和line。
我知道它会复制所有文字。我怎么只能复制不带面具输入的数字?
(窗体)
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 WindowsFormsApplication3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
label1.Text = maskedTextBox1.Text;
}
}
}
答案 0 :(得分:3)
一种解决方案是在读取值之前将TextMaskFormat
设置为ExcludePromptAndLiterals
:
maskedTextBox1.TextMaskFormat = MaskFormat.ExcludePromptAndLiterals;
Console.WriteLine(maskedTextBox1.Text);
//will print 3123 when value in the mask textbox is (31) 23 for mask (00) 00
此后设置格式化:
maskedTextBox1.TextMaskFormat = MaskFormat.IncludeLiterals;
即使您不将格式设置回IncludeLiterals
,UI控件仍会显示屏蔽文本(31) 23
,并且会照常工作。如果您的其他逻辑依赖于屏蔽的Text
字段,则会执行此操作。
因此,如果您没有此类依赖项,则可以在maskedTextBox1