日韩欧美人妻无码精品白浆,夜夜嗨AV免费入口,国产欧美官网在线看,高校回应聋哑女生因长相完美被质疑

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C# 委托實例(跨窗體操作控件)

admin
2017年5月27日 14:58 本文熱度 8280

今天研究了一下,在C#里面卻是可以不用自定義消息這么復(fù)雜的方法來實現(xiàn)跨窗體調(diào)用控件,C#有更好的辦法就是委托。

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

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

[csharp] view plain copy
  1. public delegate void ChangeFormColor(bool topmost);  

Form2類里

[csharp] view plain copy
  1. public event ChangeFormColor ChangeColor;  

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

[csharp] view plain copy
  1. private void button1_Click(object sender, EventArgs e)  
  2.         {  
  3.             ChangeColor(true);//執(zhí)行委托實例  
  4.         }  


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

[csharp] view plain copy
  1. {  
  2.     Form2 f = new Form2();  
  3.     f.ChangeColor += new ChangeFormColor(f_ChangeColor);  
  4.     f.Show();  
  5. }  

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

[csharp] view plain copy
  1. void f_ChangeColor(bool topmost)  
  2.         {  
  3.             this.BackColor = Color.LightBlue;  
  4.             this.Text = "改變成功";  
  5.         }  



 三、完整代碼

[csharp] view plain copy
  1. using System;  
  2. using System.Drawing;  
  3. using System.Windows.Forms;  
  4.   
  5. namespace 跨窗體調(diào)用控件  
  6. {  
  7.     public partial class Form1 : Form  
  8.     {  
  9.         public Form1()  
  10.         {  
  11.             InitializeComponent();  
  12.         }  
  13.         private void button1_Click(object sender, EventArgs e)  
  14.         {  
  15.             Form2 f = new Form2();  
  16.             f.ChangeColor += new ChangeFormColor(f_ChangeColor);  
  17.             f.Show();  
  18.         }  
  19.         void f_ChangeColor(bool topmost)  
  20.         {  
  21.             this.BackColor = Color.LightBlue;  
  22.             this.Text = "改變成功";  
  23.         }  
  24.     }  
  25. }  


 

[csharp] view plain copy
  1. using System;  
  2. using System.Windows.Forms;  
  3.   
  4. namespace 跨窗體調(diào)用控件  
  5. {  
  6.     public delegate void ChangeFormColor(bool topmost);  
  7.     public partial class Form2 : Form  
  8.     {  
  9.         public Form2()  
  10.         {  
  11.             InitializeComponent();  
  12.         }  
  13.         public event ChangeFormColor ChangeColor;  
  14.         private void button1_Click(object sender, EventArgs e)  
  15.         {  
  16.             ChangeColor(true);//執(zhí)行委托實例  
  17.         }  
  18.     }  
  19. }  

 

最后再給大家介紹一種最簡單的C#跨窗體操作



該文章在 2017/5/27 14:58:41 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場、車隊、財務(wù)費(fèi)用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved