Как установить фокус обратно в текстовое поле C#
я создаю класс для наследования текстового поля для даты.
1. при потере фокуса я проверяю текст, чтобы проверить, является ли он действительной датой, а если нет, то отображаю сообщение и устанавливаю фокус на одно и то же текстовое поле, чтобы предотвратить выход пользователя без исправления даты.
ниже строка в коде получает подчеркивание красным цветом
этот.Сосредоточить;
Ошибка CS0201 в качестве оператора можно использовать только выражения assignment, call, increment, decrement, await и new object
Что я уже пробовал:
protected override void OnLostFocus(EventArgs e) { base.OnLostFocus(e); if (this.Text == "") { } else { if (DateTime.TryParseExact(this.Text, "dd/mm/yyyy", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out DateTime theDate)) { } else { MessageBox.Show("Invalid Date : Date should be in 'DD/MM/YYYY' format"); this.Focus; } } }
Richard MacCutchan
Почему бы не использовать DatePicker вместо текстового поля?