我正在尝试制作一个表单,我可以在其中从用户那里获取特定值并将其保存在表格中。该表同时对用户可见。我制作的表格使用 datagridview 显示表格。我需要输入的值正在由输入框获取。(我提到了这个网站)。
问题是,输入框取的值遵循一定的语法,我需要通知用户,我想在文本框中显示语法,当用户选择文本框输入这个值时预加载的文本被删除。
您可以使用 MaskedTextbox 代替经典的 TextBox:
http://msdn.microsoft.com/de-de/library/system.windows.forms.maskedtextbox.mask(v=vs.110).aspx
为了补充 Kai 所说的,如果提供的输入未验证,您还可以使用 ErrorProvider 类向用户提供通知。
http://msdn.microsoft.com/en-us/library/system.windows.forms.errorprovider.aspx http://www.codeproject.com/Articles/898/How-To-Use-The-ErrorProvider-Object -To-Indicate-In
您应该考虑使用MaskedTextBox。
一个简单的实现如下所示:
MaskedTextBox mskTxtBox = new MaskedTextBox();
mskTxtBox.Mask = /* format your Mask here */;
另一个更具体的例子是:
mskTxtBox.Mask = "(123)456-7890"; //For a phone number.
或者:
mskTxtBox.Mask = "00/00/0000"; //For a date.
这不是标准的 .Net,它更多的是 Vb.Net,因为此类是 Microsoft.VisualBasic 程序集的一部分。我建议您改用标准 System.Windows.Forms 命名空间中的 MaskedTextBox。
http://msdn.microsoft.com/en-us/library/system.windows.forms.maskedtextbox.aspx