場景
C#中委托與事件的使用-以Winform中跨表單傳值為例:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100150700
參考上面的博客,
需求是在圖形選項表單中重繪主表單的圖,
注:
博客主頁:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程式猿
獲取編程相關電子書、教程推送與免費下載,
實作
首先是圖形選項表單,即發起方,
先要宣告重繪事件(此事件宣告在圖形選項工具類DataChartHelper中):
public static event EventHandler OnRefreshChart;
然后圖形選項表單的保存按鈕事件中要呼叫重繪事件時需要觸發:
if (this.Confirm("保存成功") == DialogResult.OK) { Common.DataChart.DataChartHelper.TriggerRefreshChart(); //觸發圖形重繪事件 this.Dispose(); }
此時會觸發在圖形選項工具類中的TriggerRefreshChart(),回到工具類中:
public static void TriggerRefreshChart() { if (OnRefreshChart != null) { OnRefreshChart(null, System.EventArgs.Empty); } }
此時需要在主頁面進行圖的重繪,在主頁面表單的表單加載事件中進行事件訂閱:
Common.DataChart.DataChartHelper.OnRefreshChart -= DataChartHelper_OnRefreshChart;
Common.DataChart.DataChartHelper.OnRefreshChart += DataChartHelper_OnRefreshChart;
此時就會執行當前主頁面的方法DataChartHelper_OnRefreshChart:
private void DataChartHelper_OnRefreshChart(object sender, EventArgs e) { DataChartHelper.RefreshPane(this.zedGraphControl1); }
此方法會執行具體的操作,具體操作是呼叫工具類中的重繪方法,
具體流程圖示

轉載請註明出處,本文鏈接:https://www.uj5u.com/net/119010.html
標籤:C#
