Chinaunix首页 | 论坛 | 博客
  • 博客访问: 371949
  • 博文数量: 94
  • 博客积分: 2500
  • 博客等级: 少校
  • 技术积分: 823
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-04 16:49
文章分类

全部博文(94)

文章存档

2015年(1)

2011年(1)

2010年(3)

2008年(8)

2007年(55)

2006年(26)

我的朋友

分类:

2007-07-30 17:10:34

Form1中调用Form2,要求在Form2中发生某件事时Form1也能收到其事件并能做相应处理。
在Form2中要有如下代码:
    public partial class Form2 : Form
    {
        ……
        public event EventHandler Applyevent;//定义事件
        ……
        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("我在Form2的button1_Click方法中,发生Form2的button1,Click事件。");
            if(Applyevent!=null)              //不知道这句是干什么的,没有好象也可以
                Applyevent(this, EventArgs.Empty);//这句是必须的
        }
    }
 
在Form1中要有如下代码:
 
    public partial class Form1 : Form
    {
        Form2 form2;
        public Form1()
        {
            InitializeComponent();
            form2 = new Form2();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            form2.Applyevent+=new EventHandler(form2_Applyevent);//订阅form2中的Applyevent事件
            form2.Show();
        }
        void form2_Applyevent(object sender, EventArgs e)//form2中的Applyevent事件发生后执行的代码
        {
            MessageBox.Show("我在Form1的form2_Applyevent方法中,发生Form2的button1,Click事件,以及订阅的Applyevent事件");
        }
    }

 
阅读(792) | 评论(0) | 转发(0) |
0

上一篇:窗体的OK与Cancle

下一篇:数据验证

给主人留下些什么吧!~~