C#使用委托在窗體間傳值

任務(wù):在窗體1點(diǎn)擊按鈕顯示窗體2此熬,在窗體2點(diǎn)擊按鈕將該窗體TextBox的值傳遞給窗體1的Label


窗體1.jpg

窗體2.jpg

傳值.jpg

直接看代碼(窗體1的代碼)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace FormSendValueToForm
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        //將Form2傳遞過來的值賦值給LabelOne
        public void ShowText(string str)
        {
            labelOne.Text = str;
        }

        private void buttonOne_Click(object sender, EventArgs e)
        {
            Form2 form2 = new Form2(ShowText);
            form2.ShowDialog();
        }
    }
}

窗體2的代碼

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace FormSendValueToForm
{
    //與窗體1的ShowText方法簽名相同的委托類型
    public delegate void DelSendValue(string str);
    public partial class Form2 : Form
    {
        //委托類型字段权均,存儲(chǔ)Form1傳送過來的函數(shù)
        private DelSendValue delMethod;
        public Form2(DelSendValue del)
        {
            this.delMethod = del;
            InitializeComponent();
        }
        //通過委托傳值給窗體1垛叨,實(shí)際上運(yùn)行的是窗體1的ShowText方法
        private void buttonTwo_Click(object sender, EventArgs e)
        {
            this.delMethod(textBoxTwo.Text);
        }
    }
}

窗體1點(diǎn)擊按鈕顯示窗體2坏瘩,在窗體1創(chuàng)建一個(gè)ShowText方法(返回值為Void介牙,參數(shù)為String)用于給Label賦值银受。
窗體2聲明一個(gè)委托類型圈膏,以及該委托類型的字段塔猾,用于存儲(chǔ)窗體1傳遞過來的函數(shù)。
點(diǎn)擊窗體2的按鈕將TextBox的值傳遞給窗體1的Label稽坤,實(shí)際上運(yùn)行的是窗體1的ShowText方法丈甸。

簡(jiǎn)言之:

窗體1說:我有妹子(方法),你有酒(值)尿褪。但是我沒有辦法直接用你窗體2的酒睦擂,你也沒有辦法用我的妹子(方法),既然這樣的話杖玲,你窗體2先找個(gè)咱倆都信得過的中間人(聲明一個(gè)委托)顿仇,我的妹子和你中間人聯(lián)系(方法和你委托簽名一致),咱們兩個(gè)合作一下【饰牛可是你窗體2不要隨便出來鸿吆,我告訴你啥時(shí)候可以露面了你再出來(窗體2要顯示還得通過我窗體1的按鈕點(diǎn)擊才可以)。如果你窗體2覺得我窗體1靠譜的話述呐,你出來的時(shí)候我就把我的妹子帶上親自交到你手中(我窗體1把自己的方法通過窗體2的構(gòu)造函數(shù)給你傳過去)惩淳,妹子平常都是我自己享用的(這個(gè)函數(shù)平常是我窗體1自己用來給自己的Label賦值的),你窗體2可得好生照顧芭野帷(窗體2暫時(shí)在構(gòu)造函數(shù)里面先用你的委托字段把我的方法保存好)思犁。

窗體2說:你好,窗體1进肯,你的妹子已經(jīng)來到我這兒了(窗體1發(fā)過來的方法我已經(jīng)通過我的構(gòu)造函數(shù)保存好了)抒倚。今天玩的很高興!為了表達(dá)我的誠意坷澡,妹子回去的時(shí)候托呕,我窗體2已經(jīng)發(fā)信息告訴讓咱倆的中間人給妹子懷里塞了一瓶我珍藏多年的好酒,請(qǐng)接收F盗病(窗體2在按鈕點(diǎn)擊事件里面調(diào)用了委托项郊,委托里面有你窗體1的方法,所以我窗體2把我的TextBox里面的值通過該委托給你傳遞過去了斟赚!實(shí)在不好意思哈着降,為了給你帶酒,也只好委屈妹子了(為了給你窗體1傳值拗军,我間接的調(diào)用了你窗體1的ShowText方法)任洞!

窗體1:OK,我已經(jīng)收到 了你窗體2的美酒发侵,感謝=惶汀(窗體1收到窗體2傳過來的值了)!合作愉快刃鳄!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末盅弛,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子叔锐,更是在濱河造成了極大的恐慌挪鹏,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,348評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件愉烙,死亡現(xiàn)場(chǎng)離奇詭異讨盒,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)步责,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,122評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門返顺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來禀苦,“玉大人,你說我怎么就攤上這事创南÷字遥” “怎么了省核?”我有些...
    開封第一講書人閱讀 156,936評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵稿辙,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我气忠,道長(zhǎng)邻储,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,427評(píng)論 1 283
  • 正文 為了忘掉前任旧噪,我火速辦了婚禮吨娜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘淘钟。我一直安慰自己宦赠,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,467評(píng)論 6 385
  • 文/花漫 我一把揭開白布米母。 她就那樣靜靜地躺著勾扭,像睡著了一般。 火紅的嫁衣襯著肌膚如雪铁瞒。 梳的紋絲不亂的頭發(fā)上妙色,一...
    開封第一講書人閱讀 49,785評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音慧耍,去河邊找鬼身辨。 笑死,一個(gè)胖子當(dāng)著我的面吹牛芍碧,可吹牛的內(nèi)容都是我干的煌珊。 我是一名探鬼主播,決...
    沈念sama閱讀 38,931評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼泌豆,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼怪瓶!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起践美,我...
    開封第一講書人閱讀 37,696評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤洗贰,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后陨倡,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體敛滋,經(jīng)...
    沈念sama閱讀 44,141評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,483評(píng)論 2 327
  • 正文 我和宋清朗相戀三年兴革,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了绎晃。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蜜唾。...
    茶點(diǎn)故事閱讀 38,625評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖庶艾,靈堂內(nèi)的尸體忽然破棺而出秘蛇,到底是詐尸還是另有隱情,我是刑警寧澤然评,帶...
    沈念sama閱讀 34,291評(píng)論 4 329
  • 正文 年R本政府宣布惊科,位于F島的核電站,受9級(jí)特大地震影響煤裙,放射性物質(zhì)發(fā)生泄漏掩完。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,892評(píng)論 3 312
  • 文/蒙蒙 一硼砰、第九天 我趴在偏房一處隱蔽的房頂上張望且蓬。 院中可真熱鬧,春花似錦题翰、人聲如沸恶阴。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽冯事。三九已至,卻和暖如春沼填,著一層夾襖步出監(jiān)牢的瞬間桅咆,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來泰國(guó)打工坞笙, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留岩饼,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,324評(píng)論 2 360
  • 正文 我出身青樓薛夜,卻偏偏與公主長(zhǎng)得像籍茧,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子梯澜,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,492評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容