C# 中子窗体获取的数据,怎么给主窗体某个实例的值,多谢
C# 中子窗体获取的数据,如何给主窗体某个实例的值,谢谢!
子窗体
父窗体
------解决方案--------------------
例子:点击Form1的button1 打开Form2,再点击Form2的button2
在button2_Click事件中 通过this.Owner将Form2的textBox2的值设置给Form1的textBox1
并关闭Form2
//父窗体
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.Show(this);//或 frm2.ShowDialog(this);
////或者
//Form2 frm2 = new Form2();
//frm2.Owner = this;
//frm2.Show();//或 frm2.ShowDialog();
}
}
//子窗体
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private void button2_Click(object sender, EventArgs e)
{
Form1 frm1 = (Form1)this.Owner;
//注意 如果textBox1是放在panel1中的 则先找panel1 再找textBox1
((TextBox)frm1.Controls["textBox1"]).Text = this.textBox2.Text;
this.Close();
}
}
这里面有很多关于窗体传值的,你可以去看一下http://www.cnblogs.com/freeliver54/archive/2009/02/11/1388173.html
------解决方案--------------------
这个涉及子父窗体调用问题:http://social.microsoft.com/Forums/nl-NL/3ca0b2d4-2a0c-4a97-ba83-5b3585aa274a/c?forum=2212
------解决方案--------------------
若父窗体为Form1,子窗体为Form2
在Form1中:
Form2 frm2=new Form2();
if( frm2.Show() == DialogResult.OK)
{
Object object =new Object();
object.num=s;
}
在Form2中:
public string s= combox1.text1;
子窗体
string s= combox1.text1;
父窗体
Object object =new Object();
object.num=s;
------解决方案--------------------
例子:点击Form1的button1 打开Form2,再点击Form2的button2
在button2_Click事件中 通过this.Owner将Form2的textBox2的值设置给Form1的textBox1
并关闭Form2
//父窗体
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.Show(this);//或 frm2.ShowDialog(this);
////或者
//Form2 frm2 = new Form2();
//frm2.Owner = this;
//frm2.Show();//或 frm2.ShowDialog();
}
}
//子窗体
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private void button2_Click(object sender, EventArgs e)
{
Form1 frm1 = (Form1)this.Owner;
//注意 如果textBox1是放在panel1中的 则先找panel1 再找textBox1
((TextBox)frm1.Controls["textBox1"]).Text = this.textBox2.Text;
this.Close();
}
}
这里面有很多关于窗体传值的,你可以去看一下http://www.cnblogs.com/freeliver54/archive/2009/02/11/1388173.html
------解决方案--------------------
这个涉及子父窗体调用问题:http://social.microsoft.com/Forums/nl-NL/3ca0b2d4-2a0c-4a97-ba83-5b3585aa274a/c?forum=2212
------解决方案--------------------
若父窗体为Form1,子窗体为Form2
在Form1中:
Form2 frm2=new Form2();
if( frm2.Show() == DialogResult.OK)
{
Object object =new Object();
object.num=s;
}
在Form2中:
public string s= combox1.text1;