请教c#中不同窗口访问控件

2025-01-08 07:55:20
推荐回答(5个)
回答1:

1.From2加一个有参构造函数,参数为From1

public Form2(Form1 f1)
{
//initiali...
 this.fi=f1;
 }
 private Form1 f1;

然后Form2 frm = new Form2(this);将Form1传递过去,此时修改Form1中控件的Modify为Public,就可以在Form2中的f1操作控件了

2.frm.ShowDialog();就是你想要的

回答2:

Form1:
public TextBox Textbox1
{
get {return textbox1;}
set {textbox1 = value;}
}

Form2:
Form1 f1= new Form1();
f1.Textbox1.(属性)=....;

回答3:

可以通过属性来操作。最好不要直接 操作控件。

回答4:

假设有Form1 和Form2 ,现在要单击Form2中的一个按钮,然后,将Form2中TextBox放到Form1中的中ListBox
可以这样实现。
private void button2_Click(object sender, EventArgs e) //单击响应
{
Form1 pForm1=Form1(Application.OpenForms["Form1"]); //从已经show()过的窗体中找到From1,获得对应示例,必须是show()过的,如果你不想要show()过的窗体。那就在一个地方放一个全局变量来存储new过的窗体吧。
pForm1.listbox1.items.add(textbox1.text);
}
哦,别忘了,在Form1里初始化时加上 this.Name = "Form1";
还有Form1里的ListBox要是public 的。
=。=
其实窗体也就是个实例对象而已,没啥大区别。
哦,其实我也是小白

回答5:

frm.parent 这个就是form1控件了