需要手动修改 Form2的 private void InitializeComponent() 为 public void InitializeComponent() 在使用下面的方法 Form2 f = new Form2(); string dd=f.textBox1.Text;
把Form2的textbox的text设计成Form2的属性来访问即可。 Form1 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms;namespace WindowsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private Form2 frm = new Form2(); private void button1_Click(object sender, EventArgs e) { MessageBox.Show(frm.TextBoxText); } private void Form1_Load(object sender, EventArgs e) { frm.Show(); } } } Form2 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms;namespace WindowsApplication1 { public partial class Form2 : Form { public Form2() { InitializeComponent(); this.textBox1.Text = "aaa";//为了看到效果,随便给的值 } // private string text; public string TextBoxText { get { return this.textBox1.Text; } set { this.textBox1.Text = value; } } } }
或者在Form2.Designer.cs里面 把private System.Windows.Forms.TextBox textBox1; 修改成public System.Windows.Forms.TextBox textBox1; 然后在..... Form2 f = new Form2(); string dd=f.textBox1.Text;
或者
form2.textbox1.text获得
需要手动修改 Form1的
private void InitializeComponent()
为
public void InitializeComponent()
在使用下面的方法
Form1 f = new Form1();
string dd=f.textBox1.Text;
Closing时再赋null,其他窗口调用它直接使用这个静态变量,但缺点是此窗口类不能同时打开多个
就是说我在点击事件中去把form2 new出来,可是却点不出form2的textBox
不知如何是好
private void InitializeComponent()
为
public void InitializeComponent()
在使用下面的方法
Form2 f = new Form2();
string dd=f.textBox1.Text;
Form1 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private Form2 frm = new Form2(); private void button1_Click(object sender, EventArgs e)
{ MessageBox.Show(frm.TextBoxText);
} private void Form1_Load(object sender, EventArgs e)
{
frm.Show();
}
}
}
Form2
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;namespace WindowsApplication1
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
this.textBox1.Text = "aaa";//为了看到效果,随便给的值
} // private string text; public string TextBoxText
{
get { return this.textBox1.Text; }
set { this.textBox1.Text = value; }
} }
}
把private System.Windows.Forms.TextBox textBox1;
修改成public System.Windows.Forms.TextBox textBox1;
然后在.....
Form2 f = new Form2();
string dd=f.textBox1.Text;
http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx
http://blog.csdn.net/zhzuo/archive/2006/05/05/708941.aspx