Form2 code:
public void button2_Click(object sender, EventArgs e)
{
Form1 form1form = new Form1();
Label asd = new Label();
asd.Text = "asdasasdasdasd";
form1form.Controls.Add(asd);
Form2 form2form = new Form2();
form2form.close();
}
I want to add new label and button on form1 from form2
how it made ?
thanks
If you want to access form1form
from form2form
you must have public reference to form1form
. Declare property in form1form
like below:
public static form1form Instance { get; private set; }
Then set Instance
in Load
event of form1form
:
private void form1form_Load(object sender, EventArgs e)
{
Instance = this;
}
In form2form
:
public void button2_Click(object sender, EventArgs e)
{
Label asd = new Label();
asd.Text = "asdasasdasdasd";
form1form.Instance.Controls.Add(asd);
}
To add all controls in form2 to form1:
foreach(Control control in form2form.Controls)
{
form1form.Controls.Add(control);
}
Or if you want to just add those two things, there are two options: 1. Make those two Controls public as so
public class Form2 : Form
{
//othercode
public Button button;
}
And then add these specific controls by:
form1form.Controls.Add(form2form.button);
2: Add them using the names, for example: say the name of the button is "button" and the name of the label is "label".
form1form.Controls.Add(form2form.Controls.Find("button",true).FirstOrDefault();
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.