我在C#中有申请表,并且我有以下代码可以从被屏蔽的文本框中验证IP地址:
private void MainForm_Load(object sender, EventArgs e)
{
IPAdressBox.Mask = "###.###.###.###";
IPAdressBox.ValidatingType = typeof(System.Net.IPAddress);
IPAdressBox.TypeValidationCompleted += new TypeValidationEventHandler(IPAdress_TypeValidationCompleted);
}
void IPAdress_TypeValidationCompleted(object sender, TypeValidationEventArgs e)
{
if(!e.IsValidInput)
{
errorProvider1.SetError(this.IPAdressBox,"INVALID IP!");
}
else
{
errorProvider1.SetError(this.IPAdressBox, String.Empty);
}
}
在IPAdres_TypeValidationComleted函数中,如果语句为true,则errorProvider1闪烁并提供“ INVALID IP”消息,否则它将消失。问题是即使我输入了有效的IP地址,输入类型也似乎总是无效的。
最佳答案
这可能是由于区域设置和小数引起的。
您可以尝试使用此Mask,看看它是否可以解决问题:
IPAdressBox.Mask = @"###\.###\.###\.###";