看到同伴,我有一个问题,就是我认为我的代码处于循环中
在您回答“ RePoST”之前,我已经访问了所有其他线程,但仍然没有找到解决方法
namespace Triangle_Proportions
{
public partial class Form1 : Form
{
public class Data : Form1
{
public static class Variables
{
public static int A;
public static int B;
public static int C;
public static int a;
public static int b;
public static int c;
}
public void Set_Variables()
{
Variables.A = label0A.Left;
Variables.B = label0B.Left;
Variables.C = label0C.Left;
Variables.a = label_a.Left;
Variables.b = label_b.Left;
Variables.c = label_c.Left;
}
}
public Form1()
{
InitializeComponent();
Data etc = new Data();
etc.Set_Variables();
}
}
}
这部分代码的唯一目标是在Set_Variables();
之后调用InitializeComponent();
我知道我可以通过简单地从Variables
中“抽出” Set_Variables
和Data
来解决此问题,但我希望两者都留在Data
内,因为看起来更容易搜索时将其显示出来。
它没有任何语法错误,但是每次我决定调用Set_Variables();
时,程序就永远不会打开
答案 0 :(得分:8)
您有递归问题。
在OK
的构造函数中,实例化一个新类,该类也从Form1
继承,该类再次调用构造函数。看到问题了吗?
创建非静态版本:
Form1
以及您的表格:
public class Variables
{
public int A;
public int B;
}