我正在尝试从C#中的form2调用类,例如下面的代码来自“Form2”。
private void button17_Click(object sender, EventArgs e)
{
Form1 frontmain = new Form1();
frontmain.buttonchange();
this.Hide();
}
这不会在名为“buttonchange”的“Form1”中执行该类。下面是“buttonchange”类的代码:
public void buttonchange()
{
button1.Text = workshop1;
button2.Text = workshop2;
button3.Text = workshop3;
button4.Text = workshop4;
button5.Text = workshop5;
{
我认为它与form1和form2之间的隐私设置有关,但我从未找到解决方案。我总是以某种方式解决它。有谁知道这里的问题是什么?
答案 0 :(得分:0)
答案 1 :(得分:0)
你正在创建一个Form1
的新实例并在其上调用代码,这可能不是你真正打算做的。
如果您正在尝试引用Form1的现有实例,那么您需要引用它(而不是创建新实例)。
如果Form1
的实例产生了您的点击处理程序所在的表单,您可以像这样引用它:
Form1 frontmain = this.Owner as Form1;
如果Form1
的实例没有使用单击处理程序生成第二个表单,那么您将需要采用基于事件的方法(这是一种更好的方法,因为它消除了依赖关系)。 / p>