Ожидание в асинхронной функции ввода текста в TextBox (наподобие консольной readline) - C#

Узнай цену своей работы

Формулировка задачи:

Есть асинхронная функция, в середине которой требуется дать пользователю доступ к текстбоксу и и ожидать допустим нажатия кнопки для продолжения расчетов и действий описанных в функции. Такое вроде как должно несложно реализовываться, но не знаю куда копнуть чтоб понять что и как.. Использую как асинхронные функции задачи(async Task<bool>..)
Неужели нет идей?

Решение задачи: «Ожидание в асинхронной функции ввода текста в TextBox (наподобие консольной readline)»

textual
Листинг программы
async void AsyncMethod()
{
   while (condition)
   {
      // Тело цикла
      ...
 
      if (нужен_текст)
      {
         string text = await GetUserInput();
         MessageBox.Show(text);
      }
   }
}
 
TaskCompletionSource<string> _textInput;
Task<string> GetUserInput()
{
    _textInput = new TaskCompletionSource<string>();
    return _textInput.Task;
}
 
void SetTextButtonClicked(object sender, EventArgs e)
{
      if (_textInput != null)
         _textInput.SetResult(textBox.Text);
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4 из 5
Похожие ответы