正确调用另一个类的方法?

Dan*_*rda -1 c# winforms

看到研究员我有问题,我认为我的代码是循环的

在你回答"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();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这部分代码的唯一目标是调用Set_Variables();之后InitializeComponent();

我知道我可以只是"快灵出"简单地解决这个问题Variables,并Set_VariablesData,但我想这不但是为了保持内部Data,因为更容易搜索这个时候来关注一下吧.

它没有任何语法错误,但每次我决定调用Set_Variables();该程序永远不会打开

Chr*_*rdt 8

你有一个递归问题.

Form1你的构造函数中,实例化一个新类,它也是从中继承的,Form1再次调用构造函数.看到问题?

创建非静态版本:

public class Variables
{
    public int A;
    public int B;
}
Run Code Online (Sandbox Code Playgroud)

而你的表格:

public partial class Form1 : Form
{
    private Variables _variables;

    public Form1()
    {
        InitializeComponent();
        _variables = new Variables
        {
            A = label0A.Left,
            B = label0B.Left
        };
    }
}
Run Code Online (Sandbox Code Playgroud)