我有MainForm,我已经加载了UserControl。此UserControl具有很少的文本框和保存按钮。单击“保存”后,文本框中的信息将保存到文件中。我想通知MainForm信息已更新,它可以重新加载。
我该怎么做?
答案 0 :(得分:5)
使用活动。
在UserControl
中声明一个事件,例如:
public event EventHandler SaveClicked;
然后点击保存点击,举起活动:
if (this.SaveClicked != null)
{
this.SaveClicked(this, EventArgs.Empty);
}
最后将主窗体中的处理程序附加到您的事件中:
...
YourUserControl ctrl = new YourUserControl();
ctrl.SaveClicked += (sender, e) =>
{
// Put logic of your main form here
};
答案 1 :(得分:1)
您可以使用event - userControl将事件发送给父级 - 而父级将注册为事件侦听器。