Я использую событие TextChanged в текстовом поле для проверки содержимого.Я пытаюсь сделать всплывающую подсказку, если пользовательские ключи недопустимы.Это отлично работает, когда в первый раз вводится недопустимый символ. Если я удаляю недопустимый символ, а затем добавляю еще один недопустимый символ, всплывающая подсказка не появляется.Мне нужно переместить мышь, чтобы всплывающая подсказка появилась снова.
Мне нужен способ сообщить пользователю, что он ввел недопустимый символ в текстовое поле, которое нельзя использовать в пути.
Почему всплывающая подсказка не появляется после ввода другого недопустимого символа?
Код:
// Initialization
char[] illegalCharacters = Path.GetInvalidPathChars();
//Event handler
private void descriptionTextChanged(object sender, EventArgs e)
{
if (description.Text.Length < 6)
{
description.BackColor = Color.LightPink;
toolTip1.SetToolTip(description, @"Must be at least 6 characters long.");
}
else
{
description.BackColor = Color.White;
foreach (char illegalCharacter in illegalCharacters)
{
if (description.Text.Contains(illegalCharacter))
{
description.BackColor = Color.LightPink;
toolTip1.RemoveAll();
toolTip1.Show(@"Name may not contain a '< , > | or double quote.", description);
break;
}
}
}
}