private void btnClassNameA_Click(object sender, EventArgs e)
{
txtbClassNameA.Visible = true;
txtbClassNameA.Focus();
}
private void txtbClassNameA_KeyDown_1(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter) ;
btnClassNameA.Text = txtbClassNameA.Text;
txtbClassNameA.Visible = false;
}
При нажатии кнопки появляется текстовое поле. Я не могу заставить его принимать более 1 символа за раз, не исчезая. Он должен исчезнуть, нажав клавишу ввода. Любая помощь будет принята с благодарностью!
Ваш текущий код эквивалентен этому:
private void txtbClassNameA_KeyDown_1(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter) { } // does nothing, just evaluates the condition
btnClassNameA.Text = txtbClassNameA.Text;
txtbClassNameA.Visible = false;
}
Вы должны изменить его следующим образом:
private void txtbClassNameA_KeyDown_1(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
btnClassNameA.Text = txtbClassNameA.Text;
txtbClassNameA.Visible = false;
}
}
Оператор if не отформатирован правильно. Попробуйте вот так:
if (e.KeyCode == Keys.Enter)
{
btnClassNameA.Text = txtbClassNameA.Text;
txtbClassNameA.Visible = false;
}
Кажется, у вас есть точка с запятой после вашего условного.
Сейчас он оценивает условное выражение, а затем переходит к обновлению текста и делает поле невидимым.
private void txtbClassNameA_KeyDown_1(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
btnClassNameA.Text = txtbClassNameA.Text;
txtbClassNameA.Visible = false;
}
}
Можете дать вам лучшие результаты.
private void txtbClassNameA_KeyDown_1(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
btnClassNameA.Text = txtbClassNameA.Text;
txtbClassNameA.Visible = false;
}
}
Если это ваш фактический код, точка с запятой может отбросить вас. Попробуй это.
if (e.KeyCode == Keys.Enter) ;
что означает, что когда ввод - это нажатие, ничего не выполняет.;
просто приводит к неоперации. Остальная часть кода выполняется всякий раз, когда нажимается любая клавиша, и, следовательно, текстовое поле исчезает. Вы, вероятно, намеревались обернуть их в фигурные скобки?