【发布时间】:2017-06-04 12:09:52
【问题描述】:
我在多行文本框中指定了一个快捷方式,即 Ctrl+Return。
它可以工作,但是当我使用 Ctrl+Return 时,Enter 按钮会触发并使光标移到底线。当我按 Ctrl+Return 时如何禁用 Enter?
if (e.Control==true && e.KeyCode == Keys.Return)
{
// do anything()
}
【问题讨论】:
我在多行文本框中指定了一个快捷方式,即 Ctrl+Return。
它可以工作,但是当我使用 Ctrl+Return 时,Enter 按钮会触发并使光标移到底线。当我按 Ctrl+Return 时如何禁用 Enter?
if (e.Control==true && e.KeyCode == Keys.Return)
{
// do anything()
}
【问题讨论】:
这只是在黑暗中的一个镜头,但是在 if 语句中添加以下内容会起作用吗?
e.Cancel = true;
【讨论】:
使用以下命令将起作用;
if (e.KeyCode == Keys.Enter)
{
e.SuppressKeyPress = true;
}
【讨论】:
如果我没记错的话,keydown 事件将在文本框接收到字符后触发。
尝试按键事件:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == '\n')
{
// do anything()
e.Handled = true;
}
}
【讨论】: