C#如何在Form1中实例化一个Form2并把Form1中的Temp的值传给Form2的textBox
我在Form1中打开一个Form2的新窗口,想把Form1中的Temp的值传给Form2的TextBox请问怎么在Form1打开一个Form2的新窗体?求个简单的代码。还...
我在Form1中打开一个Form2的新窗口,想把Form1中的Temp的值传给Form2的TextBox请问怎么在Form1打开一个Form2的新窗体?求个简单的代码。还有怎么传值?具体点给个方法!谢谢!
展开
7个回答
展开全部
决的你问题有几种方法。
1、在form1中建立SESSION,无论textbox1是否有值,当点击BUTTON时,都将textbox1里的value赋到Session中。然后在form2窗体中,用SESSION填充textbox2。为了防止变态出错,可以增加IF判断SESSION无值时不进行填充。
2、在FORM1的BUTTON点击跳转事件中,增加pars参数。在FORM2页面的LOAD中的,用REQUEST方法取出参数,然后赋值到FORM2的TXTXBOX2中。
3、用JAVASCRIPT方法,可能获得父窗体的数据,这个你就要JAVASCRIPT比较熟练了,我不太熟悉这种写法,不过我记得好像是用:Windows.oper().好像是这个,可以获得父窗体的数据。
1、在form1中建立SESSION,无论textbox1是否有值,当点击BUTTON时,都将textbox1里的value赋到Session中。然后在form2窗体中,用SESSION填充textbox2。为了防止变态出错,可以增加IF判断SESSION无值时不进行填充。
2、在FORM1的BUTTON点击跳转事件中,增加pars参数。在FORM2页面的LOAD中的,用REQUEST方法取出参数,然后赋值到FORM2的TXTXBOX2中。
3、用JAVASCRIPT方法,可能获得父窗体的数据,这个你就要JAVASCRIPT比较熟练了,我不太熟悉这种写法,不过我记得好像是用:Windows.oper().好像是这个,可以获得父窗体的数据。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在Form2中定义一个公共变量 public string Temp="";
然后将Form1中的值传出,form2接收就可以了。
Form2 fm2=new Form2();
fm2.Temp=this.temp; //this.temp表示当前窗体form1中的变量值
fm2.show();
然后将Form1中的值传出,form2接收就可以了。
Form2 fm2=new Form2();
fm2.Temp=this.temp; //this.temp表示当前窗体form1中的变量值
fm2.show();
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一楼正解,
也可以这样做,在FORM2的构造函数把值接收了
public Form2(string temp)
{
InitializeComponent();
TextBox.Text=temp;
}
在FORM1 实例化FORM2的时候 就传值给FORM2
FORM2 f2=new FORM2(temp);
f2.show();
如果你觉的我说的对,请感谢我,但是分不要给我,因为是一楼先答的,谢谢.
也可以这样做,在FORM2的构造函数把值接收了
public Form2(string temp)
{
InitializeComponent();
TextBox.Text=temp;
}
在FORM1 实例化FORM2的时候 就传值给FORM2
FORM2 f2=new FORM2(temp);
f2.show();
如果你觉的我说的对,请感谢我,但是分不要给我,因为是一楼先答的,谢谢.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
LS几个都是对的 1楼 2楼 方法常用,3楼方法不常用。1楼的方法 可以与 static联用 2楼方法,但是二楼的 InitializeComponent();
TextBox.Text=temp; 位置顺序不能颠倒,否则会出现语法错误
public partial class Form2 : Form
{
private string str;
public Form2(string str)
{
InitializeComponent();
this.str = str;
}
private void Form2_Load(object sender, EventArgs e)
{
textBox1.Text = str;
}
}
form1类中 写
string temp = textBox1.Text;
Form2 frm = new Form2(temp);
frm.Show();
只做补充
TextBox.Text=temp; 位置顺序不能颠倒,否则会出现语法错误
public partial class Form2 : Form
{
private string str;
public Form2(string str)
{
InitializeComponent();
this.str = str;
}
private void Form2_Load(object sender, EventArgs e)
{
textBox1.Text = str;
}
}
form1类中 写
string temp = textBox1.Text;
Form2 frm = new Form2(temp);
frm.Show();
只做补充
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
将form2中的textbox的可访问性设置成public,然后在form1中打开,像这样:
Form2 frm2=new Form2();
frm2.TextBox1.text="aaa";
frm2.show();
Form2 frm2=new Form2();
frm2.TextBox1.text="aaa";
frm2.show();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询