在WinForms中,可以通過事件和委托來實現控件之間的雙向通信。以下是一種常見的實現方式:
public delegate void DataChangedEventHandler(object sender, EventArgs e);
public event DataChangedEventHandler DataChanged;
public void SubscribeToDataChangedEvent(Control sender)
{
sender.DataChanged += OnDataChanged;
}
private void OnDataChanged(object sender, EventArgs e)
{
// 處理事件
}
private void NotifyDataChanged()
{
DataChanged?.Invoke(this, EventArgs.Empty);
}
通過以上步驟,可以實現控件之間的雙向通信。當發送通知的控件調用NotifyDataChanged
方法時,接收通知的控件會執行OnDataChanged
方法來處理事件。這樣就實現了控件之間的雙向通信。