C# 窗体间传值(使用委托与自定义事件)

using System;  
    using System.Drawing;  
    using System.Windows.Forms;  
      
    namespace 跨窗体调用控件  
    {  
        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 = "改变成功";  
            }  
        }  
    }
using System;  
    using System.Windows.Forms;  
      
    namespace 跨窗体调用控件  
    {  
        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);//执行委托实例  
            }  
        }  
    }
原文地址:https://www.cnblogs.com/testsec/p/6095717.html