Создайте обработчик нажатия клавиши Textbox и используйте Path.GetInvalidPathChars()
, Path.GetInvalidFileNameChars()
, чтобы проверить действительный символ и вернуть версию в верхнем регистре, если символ действителен.
textBox1.CharacterCasing = CharacterCasing.Upper;
...
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (Path.GetInvalidFileNameChars().Contains(e.KeyChar) ||
Path.GetInvalidPathChars().Contains(e.KeyChar))
{
e.Handled = true;
}
}
[Конечно, было бы более целесообразно создать метод, а не помещать этот код непосредственно в обработчик.]
ОБНОВЛЕНО для отражения комментариев.