Правильно ли использовать функцию для создания обработчика? Правильно ли использовать функцию для создания обработчика контрола?public static void Validate(ValidateType type, Control control)
{
switch (type)
{
case ValidateType.OnlyNumbers:
{
control.KeyPress += ValidNumbers;
break;
}
case ValidateType.OnlyText:
{
control.KeyPress += ValidNumbers;
break;
}

}

21 Авг 2019 в 07:01
193 +1
0
Ответы
1

Нет, в данном коде есть ошибка.

В случае когда type равно ValidateType.OnlyText, вместо добавления обработчика ValidNumbers, нужно добавить обработчик ValidText.В данном коде отсутствуют определения методов ValidNumbers и ValidText, которые должны использоваться как обработчики событий KeyPress.

Исправленный код должен выглядеть примерно следующим образом:

public static void Validate(ValidateType type, Control control)
{
switch (type)
{
case ValidateType.OnlyNumbers:
control.KeyPress += ValidNumbers;
break;
case ValidateType.OnlyText:
control.KeyPress += ValidText;
break;
}
}
private static void ValidNumbers(object sender, KeyPressEventArgs e)
{
// Логика для проверки ввода только чисел
}
private static void ValidText(object sender, KeyPressEventArgs e)
{
// Логика для проверки ввода только текста
}

Таким образом, необходимо использовать правильные имена методов-обработчиков и убедиться, что они реализуют необходимую логику для валидации ввода в зависимости от типа ValidateType.

20 Апр 2024 в 13:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир