在主窗体中处理 UserControl 事件
在用户界面设计中,通常为特定功能创建自定义用户控件。但是,有时需要在主窗体级别处理用户控件内的事件。
要实现此目的,请为用户控件创建一个事件处理程序,该事件处理程序可以在触发控件内的事件时引发。这允许事件在链上冒泡,使您能够在表单级别处理它。
示例:
考虑一个带有数字向上向下的自定义用户控件(NUD)控制。当 NUD 的值发生变化时,您希望主窗体更新显示窗口。
用户控件:
[Browsable(true)] [Category("Action")] [Description("Invoked when user clicks button")] public event EventHandler ButtonClick; protected void Button1_Click(object sender, EventArgs e) { //bubble the event up to the parent this.ButtonClick?.Invoke(this, e); }
Main形式:
UserControl1.ButtonClick += new EventHandler(UserControl_ButtonClick); protected void UserControl_ButtonClick(object sender, EventArgs e) { //handle the event }
注释:
以上是如何处理主窗体中的用户控制事件?的详细内容。更多信息请关注PHP中文网其他相关文章!