Как запретить ввод русских букв в textBox C#?

Для запрета ввода русских букв в элемент управления TextBox в C#, вам нужно использовать обработчик события KeyPress. В этом обработчике вы можете проверить код события KeyPressEventArgs.KeyChar, чтобы определить, является ли вводимый символ русской буквой. Если это так, вы можете отменить событие, чтобы предотвратить ввод этого символа. Ниже приведен пример кода, демонстрирующий, как выполнить это:

private void textBox_KeyPress(object sender, KeyPressEventArgs e)
{
    char inputChar = e.KeyChar;

    if (IsRussianLetter(inputChar))
    {
        e.Handled = true; // предотвратить ввод русской буквы
    }
}

private bool IsRussianLetter(char c)
{
    // коды Unicode для русских букв: от U+0400 до U+04FF
    return c >= 'u0400' && c <= 'u04FF';
}

В этом примере мы добавляем обработчик события KeyPress для объекта TextBox. В обработчике мы проверяем вводимый символ на предмет того, является ли он русской буквой, используя метод IsRussianLetter. Если вводимый символ является русской буквой, мы устанавливаем свойство Handled события KeyPress в true, чтобы предотвратить ввод этого символа.

Метод IsRussianLetter проверяет, находится ли переданный символ в диапазоне кодов Unicode для русских букв. С помощью оператора >= мы проверяем, что символ больше или равен символу 'u0400', который является первым символом русских букв в таблице Unicode. Затем мы используем оператор <=, чтобы проверить, что символ меньше или равен символу 'u04FF', который является последним символом русских букв в таблице Unicode. Используя этот подход, вы сможете запретить ввод русских букв в элемент управления TextBox в C#.