Winforms Get/Set între clase cauzează eroare - Obiect de Referință Eroare

0

Problema

Având probleme cu rezolvarea asta. Ar putea fi doar ars tbh, am făcut asta de câteva ore. Eu sunt nou la Clase în C# și este bateti joc de mine încercarea de a trece de date între clase. Știu că există măsuri care sunt lipsă, dar microsoft docs nu este de foarte mare ajutor cu întrebarea mea deci, aici merge.

Încercarea de a trece de valori dintr-o dată clasă la alta. Codul de eroare primesc este CS0120

Acesta este format din ceea ce eu sunt, folosind în clasa întâi

private void btn_Compute_Click(object sender, EventArgs e)
    {
        decimal dL = Validator(box_Left.Text);
        decimal dR = Validator(box_Right.Text);
        decimal Answer = 0;
        string op = "";
        if (rad_Add.Checked == true)
        {
            MathFirstClass.Left = dL;
            MathFirstClass.Right = dR;
            op = " + ";
        }
}

și codul în altă clasă, care sunt încercarea de a trimite datele pentru a arata ca acest lucru

    decimal left;
    decimal right;
    decimal Answer;

    public decimal Left
    {
        get { return left; }
        set { left = value; }
    }

    public decimal Right
    {
        get { return right; }
        set { right = value; }
    }

    public decimal Add_Operands
    {
        get
        {
            Answer = Left + Right;
            return Answer;
        }
    }

De asemenea, dacă cineva vrea să-mi umple pe cum de a trimite răspunsul înapoi la prima clasa, care ar fi, de asemenea, un mare ajutor.

c# get set winforms
2021-11-22 00:07:03
1

Cel mai bun răspuns

2

Creați o instanță a clasei.

private void btn_Compute_Click(object sender, EventArgs e)
{
        decimal dL = Validator(box_Left.Text);
        decimal dR = Validator(box_Right.Text);
        decimal Answer = 0;
        string op = "";
        
        //****************************************
        MathFirstClass mathFirstClass = new MathFirstClass();
        
        if (rad_Add.Checked == true)
        {
            mathFirstClass.Left = dL;
            mathFirstClass.Right = dR;
            op = " + ";
        }
}
2021-11-22 00:26:38

Variabila este numit MathFirstClass și e de tip MathFirstClass? Ar fi mai puțin confuz pentru clasa și variabila să aibă nume diferite? (Editare avut grijă de asta. Mulțumesc.)
jason44107

Deci, dacă am alte butoane radio, de exemplu rad_Sub și rad_Mult va trebuie să adăugăm că linia înainte de fiecare dacă() declarație, sau doar o singură dată în partea de sus?
KyleC

@ jason44107 puteți folosi nume de clasă pentru numire, dar prima scrisoare ar trebui să înceapă cu litere mici. Puteți căuta în Google pentru denumirea variabilelor în C #
Meysam Asadi

@KyleC Folosi dacă (){} altceva dacă (){} structura
Meysam Asadi

@MeysamAsadi ty
KyleC

În alte limbi

Această pagină este în alte limbi

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................