Я занимаюсь разработкой приложения для форм Windows, которое работает очень похоже на консоль.Функциональность, которую я пытаюсь реализовать, должна работать так же, как и Console.ReadLine()
, с кнопкой Windows вместо того, чтобы пользователь нажимал клавишу ввода.В форме есть текстовое поле, в котором отображается выходной текст, и текстовое поле, в которое пользователь может вводить информацию (показано на рисунке).
Редактировать: я хотел бы, чтобы приложение получало информацию из текстового поля ввода, а затем назначало эту информацию переменной в функции Start()
при нажатии кнопки ввода.Проблема, с которой я сталкиваюсь, состоит в том, чтобы сделать это несколько раз для одной и той же функции без дальнейшего продвижения в функции (то есть, отображая неверную информацию в текстовом поле вывода).
Насколько я понимаю, мне нужно использовать событие нажатия кнопки «Ввод», но я не уверен, что придется «приостанавливать» функцию до нажатия кнопки ввода..
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void TextTop_Changed(object sender, EventArgs e)
{
}
private void Enter_Clicked(object sender, EventArgs e)
{
textBottom.Text = string.Empty;
}
private void Start_Click(object sender, EventArgs e)
{
start();
}
public void textBoxInput(string message)
{
textTop.Text = message;
}
public void start()
{
textBottom.Text = "Enter name:";
//need to wait here until enter button is clicked.
string name = textTop.Text;//get input from top text box
textBottom.Text = "Enter description:";
//need to wait here until enter button is clicked again.
string description = textTop.Text; //get input from top text box
}
}