winform里面从form1打开from2,form2把数据传回form1并赋值给textbox,怎么实现,求教!! 我用构造函数传回到form1中并赋给了textbox,但是textbox显示并没有改变 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 窗体1 实例化窗体2的时候将窗体1做为参数:Form2 form2 = new Form2(this);Form2.Show();this.Hide();窗体2:构造函数中获得Form1然后可以Form1.textbox.Text = "123"; Form2 里存一个Form1,直接赋值 这样并没有打开form2,而是弹出了一个新的窗口 这样并没有打开form2,而是弹出了一个新的窗口大小写忘记区分了,改一下不就好了 这样并没有打开form2,而是弹出了一个新的窗口大小写忘记区分了,改一下不就好了不是大小写的问题!我肯定会注意的啊 form2.Show();怎么会,你说的并没有打开form2什么意思,那弹的新窗口不是form2是什么? Form1窗体添加一个TextBox、一个Button新建Form2窗体:添加一个TextBox、一个ButtonForm1代码:private void button1_Click(object sender, EventArgs e){ Form2 form2 = new Form2(); form2.SendMsg += (s) => { textBox1.Text = s; }; form2.Show();}Form2代码:public delegate void DeSendMsg(string str);public event DeSendMsg SendMsg;private void button1_Click(object sender, EventArgs e){ SendMsg(textBox1.Text);}点击Form1的button弹出Form2,点击Form2的button,把Form2的TextBox值赋给Form1的TextBox中 用委托 。我也是新学的 自己练手的 完美实现 而且是form2值改变的同时 form1也实时改变form1:private void button5_Click(object sender, EventArgs e) { Form2 f2 = new Form2(); f2.TextBoxChanged += new EventHandler((sender1,e1) => { textBox1.Text = f2.TextBoxValue; }); f2.ShowDialog(); }form2:public event EventHandler TextBoxChanged;private void textBox1_TextChanged(object sender, EventArgs e) { if(TextBoxChanged != null) { TextBoxChanged(this, e); } } form2里面增加个定义: public string TextBoxValue { get { return textBox1.Text; } set { textBox1.Text = value; } } 《C# 窗体间传值方法大汇总》https://blog.csdn.net/arwang/article/details/82726452 C#代码 C# string类型转换为float精度问题 请问个问高手,C#能开发什么,最擅长开发什么,开发什么比较弱,哪方面不能开发? 我写了一段程序,程序总报错,各位大侠帮忙看看错在哪里 速成版可以开发Office程序,而正式版反而不能? 请教一个C#,Sytem.Timers.Timer的问题 打包 小弟不才,只好撒分 如何在C#中使用API函数,需要什么类,如何得到API函数的声明字符串? 这里为什么说我上下文不存在名称i,在for循环里设置了呀,不是在for循环中定义的变量在循环体中有效吗 求指点 使用Spire.XLS操作excel时报错,麻烦帮我看下
Form2 form2 = new Form2(this);
Form2.Show();
this.Hide();窗体2:
构造函数中获得Form1然后可以Form1.textbox.Text = "123";
这样并没有打开form2,而是弹出了一个新的窗口
这样并没有打开form2,而是弹出了一个新的窗口
大小写忘记区分了,改一下不就好了
这样并没有打开form2,而是弹出了一个新的窗口
大小写忘记区分了,改一下不就好了
不是大小写的问题!我肯定会注意的啊
怎么会,你说的并没有打开form2什么意思,那弹的新窗口不是form2是什么?
新建Form2窗体:添加一个TextBox、一个Button
Form1代码:private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.SendMsg += (s) => { textBox1.Text = s; };
form2.Show();
}
Form2代码:public delegate void DeSendMsg(string str);
public event DeSendMsg SendMsg;private void button1_Click(object sender, EventArgs e)
{
SendMsg(textBox1.Text);
}
点击Form1的button弹出Form2,点击Form2的button,把Form2的TextBox值赋给Form1的TextBox中
form1:
private void button5_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.TextBoxChanged += new EventHandler((sender1,e1) => { textBox1.Text = f2.TextBoxValue; });
f2.ShowDialog();
}form2:public event EventHandler TextBoxChanged;
private void textBox1_TextChanged(object sender, EventArgs e)
{
if(TextBoxChanged != null)
{
TextBoxChanged(this, e);
}
}