Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Visual Studio C# Capturing Enter Key In Textbox

I am trying to capture the Enter key in a Windows Forms Textbox. I got this fragment of code from a tutorial:

private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
    //
    // Detect the KeyEventArg's key enumerated constant.
    //
    if (e.KeyCode == Keys.Enter)
    {
        MessageBox.Show("You pressed enter! Good job!");
    }
    else if (e.KeyCode == Keys.Escape)
    {
        MessageBox.Show("You pressed escape! What's wrong?");
    }
}

but now my code throws a compile/build error:

The event 'System.Windows.Forms.Control.Enter' can only appear on the left hand
side of += or -=    Line 44 Column 84

On the one hand I don't understand the error message. On the other hand line 44 is a blank line having only a newline character.

Any advice is appreciated.

Regards.

like image 577
Kevin Avatar asked Nov 04 '22 22:11

Kevin


1 Answers

Check the Designer file (form.Designer.cs)

Your Designer should be:

this.textBox1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.textBox1_KeyDown);

You may have subscribed to the Enter event. That is actually not the Enter key. That is for being on it, and it is paired with the Leave event.

like image 149
Gerhard Powell Avatar answered Nov 12 '22 20:11

Gerhard Powell