標籤:string forms 建立 一個 read cli using log com
兩個子視窗向一個主視窗發送資訊
主視窗:
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 WindowsFormsApplication1{ public partial class Form1 : Form { public Form1() { InitializeComponent(); Form2 fm2 = new Form2(); fm2.msgSender = this.Receiver; //[3]將委派物件和方法關聯 fm2.Show(); Form3 fm3 = new Form3(); fm3.msgSender = this.Receiver; //[3]將委派物件和方法關聯 fm3.Show(); } //[2]根據委託定義方法完成資料傳遞 public void Receiver(string info) { this.label2.Text = info; } } //[1]聲明委託,一般定義在外面 public delegate void ShowInfo(string param);}
子視窗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 WindowsFormsApplication1{ public partial class Form2 : Form { public Form2() { InitializeComponent(); } //建立委派物件 public ShowInfo msgSender; //通過委託傳遞資料 private void button1_Click(object sender, EventArgs e) { msgSender(this.textBox1.Text); } }}
子視窗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 WindowsFormsApplication1{ public partial class Form3 : Form { public Form3() { InitializeComponent(); } //建立委派物件[從到主] public ShowInfo msgSender; private void button1_Click(object sender, EventArgs e) { msgSender(this.textBox1.Text); } }}
C# 委託例子