Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 按enter键时防止RichTextBox创建新行_C#_.net_Winforms_Richtextbox - Fatal编程技术网

C# 按enter键时防止RichTextBox创建新行

C# 按enter键时防止RichTextBox创建新行,c#,.net,winforms,richtextbox,C#,.net,Winforms,Richtextbox,我想在RichTextBox中按下Enter键时运行一个方法,因此我编写了此代码 private void richTextBox1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) MessageBox.Show("Hello World"); } 但我不想在按下回车键时换行。但是我无法使其工作。使用以下代码 private void richTextBox1_KeyDown(o

我想在RichTextBox中按下Enter键时运行一个方法,因此我编写了此代码

private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
        MessageBox.Show("Hello World");
}
但我不想在按下回车键时换行。但是我无法使其工作。

使用以下代码

private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
{
   if (e.KeyCode == Keys.Enter)
       e.Handled = true;
}
使用e.Handled=true;这不允许Enter键生成新行:

if (e.KeyCode == Keys.Enter)
{
     MessageBox.Show("Hello World");
     e.Handled = true;
}

更新:我迟到了。重复回答

您还可以将多行属性设置为false。感谢您的回答,它成功了。但我不能再使用退格了有办法解决吗?@Gewoo…不客气。为什么退格也能起作用呢!你确定吗?因为当我按下退格键时,它不会删除任何文本。@Gewoo…不要忘记if后面的括号{和}。它应该是这样的:如果e.KeyCode==Keys.Enter{MessageBox.ShowHello-World;e.Handled=true;}
private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
        MessageBox.Show("Hello World");
        e.Handled = true; //this will work
}