Witam serdecznie. Jestem początkujący jeżeli chodzi o programowanie i aktualnie staram się napisać program liczący dane elementy toru kolejowego na potrzeby studiów. Mam jednak problem z pewną kwestią, mianowicie stworzyłem sobie za pomocą Designera interfejs graficzny (Form1) i w nim mam radiobuttony. W osobnej klasie Calc, która odpowiedzialna jest za poszczególne obliczenia, staram się ustalić warunki dla poszczególnych wyborów za pomocą:
public static string countRails()
{
if (Form1.rb60E1.Checked)
{
return "60E1";
}
else if (Form1.rb49E1.Checked)
{
return "49E1";
}
else
{
return "Nie wybrano typu szyny.";
}
Jednak dostaję błąd:
An object reference is required for the non-static field, method, or property 'RailCalc.Form1.rb60E1'
Analogicznie z Form.rb49E1.
Próbowałem w Form1 dodać do radiobuttonów static, jednak potem już wyskoczyło tyle błędów w kodzie, że zaniechałem tej próby.
Postanowiłem więc stworzyć obiekt klasy Form1:
public static string countRails()
{
Form1 frm1 = new Form1();
if (frm1.rb60E1.Checked)
{
return "60E1";
}
else if (frm1.rb49E1.Checked)
{
return "49E1";
}
else
{
return "Nie wybrano typu szyny.";
}
}
Kompilator nie raportuje błędów, metodę wywołuję poprzez guzik 'Oblicz', który wyświetla MessageBox. Niestety, cały czas dostaję komunikat "Nie wybrano typu szyny", nie ważne, czy zaznaczę guzik pierwszy czy drugi, czy żaden.
Jak mogę ten problem rozwiązać?
Dziękuję za wszelką pomoc,
pozdrawiam.