阅读量:2
可以使用以下几种方法来刷新另一个窗体:
- 使用事件:在要刷新的窗体中定义一个公共事件,在需要刷新的地方触发该事件。然后在另一个窗体中订阅该事件,在事件处理方法中执行刷新操作。
在要刷新的窗体中定义事件:
public event EventHandler RefreshEvent; protected virtual void OnRefreshEvent() { RefreshEvent?.Invoke(this, EventArgs.Empty); }
在需要刷新的地方触发事件:
OnRefreshEvent();
在另一个窗体中订阅事件:
refreshingForm.RefreshEvent += RefreshEventHandler; private void RefreshEventHandler(object sender, EventArgs e) { // 执行刷新操作 }
- 使用委托:在要刷新的窗体中定义一个公共委托,在需要刷新的地方调用该委托。然后在另一个窗体中定义一个方法,将该方法作为参数传递给要刷新的窗体,并在方法中执行刷新操作。
在要刷新的窗体中定义委托:
public delegate void RefreshDelegate(); public RefreshDelegate RefreshMethod;
在需要刷新的地方调用委托:
RefreshMethod?.Invoke();
在另一个窗体中定义刷新方法:
public void RefreshForm() { // 执行刷新操作 }
将刷新方法作为参数传递给要刷新的窗体:
refreshingForm.RefreshMethod = RefreshForm;
- 使用公共方法:在要刷新的窗体中定义一个公共方法,在另一个窗体中调用该方法执行刷新操作。
在要刷新的窗体中定义公共方法:
public void RefreshForm() { // 执行刷新操作 }
在另一个窗体中调用刷新方法:
refreshingForm.RefreshForm();