基于委托實現從窗體向主窗體發送消息,點擊從窗體按鈕,主窗體顯示點擊次數。namespace _008_基于委托實現從窗體向主窗體發送消息
{
public partial class FrmMain : Form
{
public FrmMain()
{
InitializeComponent();
//聲明從窗體
FrmOther frmOther = new FrmOther();
//將從窗體的委托變量和主窗體的對象方法關聯
frmOther.msgSender= this.Receiver;
frmOther.Show();//運行時同時顯示從窗體
}
/// <summary>
/// 接收委托傳遞的信息
/// </summary>
/// <param name="counter"></param>
//2、根據委托定義一個顯示接收點擊次數的方法
private void Receiver(string counter)
{
this.lblCounter.Text = counter;
}
}
//1、聲明委托
public delegate void ShowCounter(string counter);//聲明一個顯示點擊次數的委托
}
namespace _008_基于委托實現從窗體向主窗體發送消息
{
public partial class FrmOther : Form
{
public FrmOther()
{
InitializeComponent();
}
public ShowCounter msgSender;
//計數
private int counter = 0;
private void button1_Click_1(object sender, EventArgs e)
{
counter++;
if (msgSender != null)
{
msgSender(counter.ToString());//ShowCounter里面直接傳點擊次數
}
}
}
}
閱讀原文:原文鏈接
該文章在 2025/2/8 10:20:07 編輯過