C# Автоматическая очистка текстового поля Winform

У меня есть пользователь, который хочет иметь возможность выбрать текстовое поле и выделить текущий текст, чтобы ему не приходилось выделять его все, чтобы изменить содержимое.

При нажатии ввода необходимо обрабатывать содержимое. Эту часть, я думаю, я понял, но любые предложения приветствуются.

Мне нужна помощь в том, что после нажатия клавиши ввода любая запись в текстовое поле должна снова очистить содержимое.

Изменить: текстовое поле управляет частью RF-оборудования. Пользователь хочет ввести параметр и нажать клавишу ВВОД. Настройка отправляется на оборудование. Не делая ничего другого, пользователь хочет иметь возможность ввести новую настройку и снова нажать клавишу ВВОД.

Ответов (2)

Решение

Подключитесь к событию KeyPress в TextBox, и когда оно встретит клавишу Enter, запустите код настройки оборудования, а затем снова выделите полный текст текстового поля (см. Ниже) - Windows позаботится об очистке текста при следующем нажатии клавиши для тебя.

TextBox1.Select(0, TextBox1.Text.Length);

Хорошо, ты уверен, что это разумно? Я представляю здесь два сценария:

  1. В форме есть кнопка по умолчанию, которая "нажимается" при нажатии клавиши ввода ".
  2. Кнопки по умолчанию нет, и вы хотите, чтобы пользователь все равно нажимал клавишу ВВОД.

Оба они вызывают одни и те же вопросы:

  • Происходит ли проверка текста?
  • Почему бы не создать пользовательский элемент управления для инкапсуляции этой логики?
  • Если вы знаете, что кнопка ввода нажимается и используется нормально, как у вас проблемы с TextBoxName.Text = string.Empty ?

Кроме того, в качестве вежливости, не могли бы вы немного уточнить свой вопрос? Один большой блок немного больно читать ..