以前一定要问过,但我很新,不太懂得如何表达自己...
1)我有一个基本上充当工具栏的UserControl。我在每个窗口中重复使用工具栏,因此需要一个uc。 2)工具栏上有按钮 3)用户控件不对按钮(无代码)起作用,但它应该将事件传递回父窗口,以便父窗口中的代码激活。
我该怎么做?这是一个路由事件吗? vb.net中的任何示例代码都将不胜感激!
答案 0 :(得分:1)
在用户控件上,您需要在单击按钮时可以触发的事件。然后在您的表单中,您就像处理其他控件一样处理事件。 IE:
public event Button1_ClickedEventHandler Button1_Clicked;
public delegate void Button1_ClickedEventHandler(object sender);
private void Button1_Click(object sender, EventArgs e)
{
if (Button1_Clicked != null) {
Button1_Clicked(this);
}
}
您可以随意调用该事件并传递您想要的任何内容。在这里你会注意到我没有发送按钮,而是这个,在这种情况下应该是用户控件。