3个回答
展开全部
楼上的代码传入this很显然是不行的,因为form1中的文本框的访问权限是private
改成public后form2才可以访问,但是如果改成public 则外部程序集也可以访问form1中文本框,从安全角度来说,这样是不可取的
在form2中代码如下(窗体上一个文本框和一个按钮):
public Form2()
{
InitializeComponent();
}
TextBox txtForm1;
public Form2(TextBox txtForm)
{
InitializeComponent();
this.txtForm1 = txtForm;
}
private void button1_Click(object sender, EventArgs e)
{
txtForm1.Text = textBox1.Text;
}
form1中代码如下(窗体上一个文本框和一个按钮):
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 f = new Form2(textBox1);
f.ShowDialog();
}
点击form1中的按钮弹出form2,在form2中的文本框中输入值,点击form2中的按钮,则form1中的文本框的值会变成form2中的文本框中的值。
如果不明白可以留下你的邮箱,我把代码发给你
改成public后form2才可以访问,但是如果改成public 则外部程序集也可以访问form1中文本框,从安全角度来说,这样是不可取的
在form2中代码如下(窗体上一个文本框和一个按钮):
public Form2()
{
InitializeComponent();
}
TextBox txtForm1;
public Form2(TextBox txtForm)
{
InitializeComponent();
this.txtForm1 = txtForm;
}
private void button1_Click(object sender, EventArgs e)
{
txtForm1.Text = textBox1.Text;
}
form1中代码如下(窗体上一个文本框和一个按钮):
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 f = new Form2(textBox1);
f.ShowDialog();
}
点击form1中的按钮弹出form2,在form2中的文本框中输入值,点击form2中的按钮,则form1中的文本框的值会变成form2中的文本框中的值。
如果不明白可以留下你的邮箱,我把代码发给你
展开全部
需要修改form2构造函数,把form1当做一个对象带入form2,
例:Public Form2()
{}
修改为:Public Form2(Form tmpForm1)
{
//这里用代码接受tmpForm1,修改即可
}
在form1里调用时:
Form2 myNewform=new Form2(this);
具体你实践一下即可
例:Public Form2()
{}
修改为:Public Form2(Form tmpForm1)
{
//这里用代码接受tmpForm1,修改即可
}
在form1里调用时:
Form2 myNewform=new Form2(this);
具体你实践一下即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
窗体继承就可以修改了吧!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询