我真的很难解决这个看似简单的问题: 我有一个表单(子表单),带有一个按钮,单击该按钮时应将文本框的焦点设置在另一个表单(父表单)上。
我试图使用如下所示的一些代码:我的问题是这是正确的方法吗? 如果是这样,如何解决此错误消息
无法隐式转换类型' System.EventHandler'到'ChildForm.SomeEventHandler
public class ChildForm : Form
{
public delegate SomeEventHandler(object sender, EventArgs e);
public event SomeEventHandler SomeEvent;
}
public class ParentForm : Form
{
ChildForm child = new ChildForm();
child.SomeEvent += new EventHandler(this.HandleSomeEvent);
public void HandleSomeEvent(object sender, EventArgs e)
{
this.someTextBox.select();
}
}
答案 0 :(得分:0)
您需要从
更改作业child.SomeEvent += new EventHandler(this.HandleSomeEvent);
到
child.SomeEvent += new ChildForm.SomeEventHandler(this.HandleSomeEvent);
编辑1: 当在子窗体中发生操作时,它看起来非常适合在父窗体中处理事件。虽然它看起来不是线程安全的。
另请查看Form.Activate