C#委托和事件用法
写一程序,实现窗体传值要求:有两个窗体,Form1里面有两个控件,button(弹出Form2),lable,Form2里面有也有两个控件textbox,button(点...
写一程序,实现窗体传值 要求:有两个窗体,Form1里面有两个控件,button(弹出Form2),lable,Form2里面有也有两个控件textbox,button(点击后把textbox的值传给Form1的lable.text) 用委托和事件实现
展开
2个回答
展开全部
class Form2ButtonClickedEventArgs : EventArgs { string _text; public Form2ButtonClickedEventArgs(string text) { _text = text; } public string Text { get { return _text; } } } delegate void Form2ButtonClickedEventHandler(object sender, Form2ButtonClickedEventArgs e); class Form2 : Form { public event Form2ButtonClickedEventHandler Form2ButtonClicked; private void button_Clicked(object sender, EventArgs e) { if(Form2ButtonClicked != null) { Form2ButtonClicked(this, new Form2ButtonClickedEventArgs(this.textbox.Text)); } } } class Form1 : Form { private void button_Clicked(object sender, EventArgs e) { Form2 form = new Form2(); form.Form2ButtonClicked += new Form2ButtonClickedEventHandler(form2_Form2ButtonClicked); form.ShowDialog(this); } private void form2_Form2ButtonClicked(object sender, Form2ButtonClickedEventArgs e) { this.label.Text=e.Text; } }
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询