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