亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C# 委托(跨窗體操作控件)實例流程講解

 更新時間:2013年03月25日 14:18:48   作者:  
今天研究了一下,在C#里面卻是可以不用自定義消息這么復(fù)雜的方法來實現(xiàn)跨窗體調(diào)用控件,C#有更好的辦法就是委托。

效果描述:有兩個窗體,F(xiàn)ORM1(一個名為“打開form2”的button控件)和FORM2(一個名為“改變form1顏色“的button控件)。啟動時,F(xiàn)ORM1中點(diǎn)擊button控件“打開form2””使FORM2顯示出來。點(diǎn)擊FORM2中的“改變form1顏色”后,F(xiàn)orm1中顏色改變。

一、在Form2里面:
       首先聲明一個委托和委托實例
Form2類外

復(fù)制代碼 代碼如下:

public delegate void ChangeFormColor(bool topmost);

Form2類里

復(fù)制代碼 代碼如下:

01.public event ChangeFormColor ChangeColor; 

Form2的按鈕事件中調(diào)用委托

復(fù)制代碼 代碼如下:

private void button1_Click(object sender, EventArgs e) 
        { 
            ChangeColor(true);//執(zhí)行委托實例 
        }


二、在Form1里面:
button控件“打開form2“的click事件中有下面的代碼:

復(fù)制代碼 代碼如下:


    Form2 f = new Form2(); 
    f.ChangeColor += new ChangeFormColor(f_ChangeColor); 
    f.Show(); 
}

f.ChangeColor += new ChangeFormColor(f_ChangeColor);
這句最關(guān)鍵,你輸入到+=之后,按兩下Tab,他會自動給你生成回調(diào)函數(shù),如下:

復(fù)制代碼 代碼如下:

void f_ChangeColor(bool topmost) 
        { 
            this.BackColor = Color.LightBlue; 
            this.Text = "改變成功"; 
        }

三、完整代碼

復(fù)制代碼 代碼如下:

using System; 
using System.Drawing; 
using System.Windows.Forms; 

namespace 跨窗體調(diào)用控件 

    public partial class Form1 : Form 
    { 
        public Form1() 
        { 
            InitializeComponent(); 
        } 
        private void button1_Click(object sender, EventArgs e) 
        { 
            Form2 f = new Form2(); 
            f.ChangeColor += new ChangeFormColor(f_ChangeColor); 
            f.Show(); 
        } 
        void f_ChangeColor(bool topmost) 
        { 
            this.BackColor = Color.LightBlue; 
            this.Text = "改變成功"; 
        } 
    } 
}

復(fù)制代碼 代碼如下:

using System; 
using System.Windows.Forms; 

namespace 跨窗體調(diào)用控件 

    public delegate void ChangeFormColor(bool topmost); 
    public partial class Form2 : Form 
    { 
        public Form2() 
        { 
            InitializeComponent(); 
        } 
        public event ChangeFormColor ChangeColor; 
        private void button1_Click(object sender, EventArgs e) 
        { 
            ChangeColor(true);//執(zhí)行委托實例 
        } 
    } 
}

相關(guān)文章

  • C#表達(dá)式樹講解

    C#表達(dá)式樹講解

    本文詳細(xì)講解了C#表達(dá)式樹的創(chuàng)建、生成和使用,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-01-01
  • 淺談C#單例模式的實現(xiàn)和性能對比

    淺談C#單例模式的實現(xiàn)和性能對比

    這篇文章主要介紹了淺談C#單例模式的實現(xiàn)和性能對比的相關(guān)資料,詳細(xì)的介紹了6種實現(xiàn)方式,需要的朋友可以參考下
    2017-09-09
  • unity 鼠標(biāo)移入彈出UI的操作

    unity 鼠標(biāo)移入彈出UI的操作

    這篇文章主要介紹了unity 鼠標(biāo)移入彈出UI的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • C#自定義類型強(qiáng)制轉(zhuǎn)換實例分析

    C#自定義類型強(qiáng)制轉(zhuǎn)換實例分析

    這篇文章主要介紹了C#自定義類型強(qiáng)制轉(zhuǎn)換的方法,實例分析了C#類型轉(zhuǎn)換的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • C#中try...catch的使用與常見面試題分享

    C#中try...catch的使用與常見面試題分享

    這篇文章首先給大家介紹了關(guān)于C#中try...catch的語法,而后又給大家分享了關(guān)于C#中try...catch最常見的面試題,具有一定的參考借鑒價值,需要的朋友們下面來一起看看吧。
    2017-02-02
  • c# 引用類型與值類型的區(qū)別詳解

    c# 引用類型與值類型的區(qū)別詳解

    本篇文章是對c#中引用類型與值類型的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C#實現(xiàn)把txt文本數(shù)據(jù)快速讀取到excel中

    C#實現(xiàn)把txt文本數(shù)據(jù)快速讀取到excel中

    這篇文章主要介紹了C#實現(xiàn)把txt文本數(shù)據(jù)快速讀取到excel中,本文直接給出示例代碼,需要的朋友可以參考下
    2015-06-06
  • C#自定義的方法實現(xiàn)堆棧類設(shè)計

    C#自定義的方法實現(xiàn)堆棧類設(shè)計

    這篇文章主要為大家詳細(xì)介紹了如何使用C#創(chuàng)建一個帶有Push方法和Clist類的CStack類,并如何在其中添加和遍歷堆棧數(shù)據(jù),感興趣的可以了解下
    2024-03-03
  • C#中執(zhí)行SQL的幾種方法講解

    C#中執(zhí)行SQL的幾種方法講解

    這篇文章介紹了C#中執(zhí)行SQL的幾種方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • C#設(shè)計模式之單例模式

    C#設(shè)計模式之單例模式

    這篇文章介紹了C#設(shè)計模式之單例模式,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03

最新評論