我有一个按钮 - button1click和文本框,当我输入内容并按回车键时,我想从button1click运行代码.
如果不将整个代码从button1click复制到EnterPressed,我怎么能这样做呢?
private void button1click(object sender, EventArgs e)
{
//Some Code
}
void EnterPressed(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
Execute code from button1
}
}
Run Code Online (Sandbox Code Playgroud)
也许是这样的?但是我收到了错误......
void EnterPressed(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
button1click(object sender, EventArgs e)
}
}
Run Code Online (Sandbox Code Playgroud)
只需让button1_click调用一个方法,然后就可以从任何你想要的方法调用相同的方法.所以在你的例子中:
private void button1click(object sender, EventArgs e)
{
Foo();
}
void EnterPressed(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
Foo();
}
}
void Foo()
{
//Do Something
}
Run Code Online (Sandbox Code Playgroud)
我个人不会手动调用另一个控件的事件.