委託的用法實例

主窗體.cs
protected void FormTitleChanged(string title)
{
    this.Text = title;
}
private void button3_Click(object sender, EventArgs e)
{
    Form3 f3 = new Form3();
    f3.TitleChanged = new Form3.TitleChangedHandler(FormTitleChanged);
    f3.Show();
}

子窗體.cs
public partial class Form3 : Form
{
    // 聲明和定義委託
    public delegate void TitleChangedHandler(string title);
    public TitleChangedHandler TitleChanged;
    public Form3()
    {
        InitializeComponent();
    }
    private void button1_Click(object sender, EventArgs e)
    {
        if (TitleChanged != null)
        TitleChanged("3 通過“委託代理”傳遞信息"); //委託調用
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章