不同窗体间的数据传递 有两个窗体form1:comboBox1form2:textBox1当form1里comboBox1的值发生变化时,form2中textBox1得到comboBox1的值如何处理? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Form2 frm; private void button1_Click(object sender, EventArgs e) { frm = new Form2(); frm.Show(); } private void comboBox1_SelectedValueChanged(object sender, EventArgs e) { frm.Controls["textBox1"].Text = this.comboBox1.Text; } if (frm != null)//修改下 { frm.Controls["textBox1"].Text = this.comboBox1.Text; }方法很多,可以用静态变量,可以用委托事件 笨方法就是:form1自定义一个事件,form2订阅这个事件,form1里发生需要form2注意的任何事件时就触发这个事件,form2得到通知,做相应的反应。用事件有个好处就是不仅是form2,任何一个对form1里发生的某个事件感兴趣的对象都会得到通知。 使用辅助类也可以把要传过去的值先存到中间类的变量里,当form2需要时再去是间类里取即可 1楼的做法容易理解办法很多,你也可以用静态变量来做如声明一个静态变量来保存comboBox中的值,在用类名访问 用什么设计模式 注册表右键关联菜单。 如何实现最近访客列表(C#) 进度条 GridView的Div问题 如何屏蔽IE浏览器 Treeview怪问题,无法显示远程用TreeView的东西, 有关MSDE的配置和样本数据库的连接,~~急,在线等!!! 在页面回发过程中如何保持HtmlInputFile服务器控件的PostedFile状态? Swagger显示参数的说明 文件智能拷贝如何实现?给点建议 多个函数同时请求和返回传值的问题
private void button1_Click(object sender, EventArgs e)
{
frm = new Form2();
frm.Show(); } private void comboBox1_SelectedValueChanged(object sender, EventArgs e)
{
frm.Controls["textBox1"].Text = this.comboBox1.Text;
}
if (frm != null)//修改下
{
frm.Controls["textBox1"].Text = this.comboBox1.Text;
}方法很多,可以用静态变量,可以用委托事件
form1自定义一个事件,form2订阅这个事件,form1里发生需要form2注意的任何事件时就触发这个事件,form2得到通知,做相应的反应。用事件有个好处就是不仅是form2,任何一个对form1里发生的某个事件感兴趣的对象都会得到通知。
把要传过去的值先存到中间类的变量里,当form2需要时再去是间类里取即可
1楼的做法容易理解
办法很多,你也可以用静态变量来做
如声明一个静态变量来保存comboBox中的值,在用类名访问