当我按Return键时,我有一个文本框,我想发送数据( myButton )。
private void txtBox_KeyDown(object sender, KeyEventArgs e)
{
if (e.Shift && e.KeyCode == Keys.Return)
{
// Shift + Return
}
else if (e.KeyCode == Keys.Return)
{
// Return
if (!String.IsNullOrWhiteSpace(txtBox.Text))
myButton.PerformClick();
}
}
如果我有一些文字,但是当我没有文字时,如果按下返回它会添加一个新行并且我不想要它。任何消化?
答案 0 :(得分:1)
如果您不想将行添加到TextBox,则应将其Multiline属性设置为False。
通常,如果您不希望处理Enter键,则需要阻止其触发的KeyPress事件。您可以通过将e.SuppressKeyPress属性设置为true来执行此操作。修正:
else if (e.KeyCode == Keys.Return)
{
// Return
if (!String.IsNullOrWhiteSpace(txtBox.Text))
myButton.PerformClick();
e.Handled = e.SuppressKeyPress = true;
}