Przypisanie właściwości string obiektu do label.text

0

Dzień dobry,
piszę prostą apkę typu quiz, mam taki kod Form1

using System;
using System.Windows.Forms;

namespace Quiz_2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            SetDesktopLocation(300, 300);
        }
        public class Pytanie
        {
            public string pyt, odp1, odp2, odp3, poprawna;
            public Pytanie(string pyt, string odp1, string odp2, string odp3, string poprawna)
            {
                pyt = "Pytanie";
                odp1 = "A";
                odp2 = "B";
                odp3 = "C";
                poprawna = "Przypisana odp";
            }
        }

        public static Pytanie obj1 = new Pytanie("Kim był Jerzy Dudek?", "Pisarzem",
            "Malarzem", "Bramkarzem", "Bramkarzem");
        public static Pytanie obj2 = new Pytanie("Kto napisał Pana Tadeusza?", "Adam Mickiewicz",
            "Juliusz Słowacki", "Juliusz Słowacki", "Adam Mickiewicz");
        public static Pytanie obj3 = new Pytanie("Czym był Titanic?", "Samolotem", "Statkiem",
            "Pociągiem", "Statkiem");

        public static Form2 f2 = new Form2();
        public static Form3 f3 = new Form3();
        public static Form4 f4 = new Form4();

        public static int punkty = 0;

        private void Button1_Click(object sender, EventArgs e)
        {
            this.Hide();
            f2.Show();
        }
        public static RadioButton GetCheckedRadio(Control container)
        {
            foreach (var control in container.Controls)
            {
                RadioButton radio = control as RadioButton;

                if (radio != null && radio.Checked)
                {
                    return radio;
                }
            }
            return null;
        }
    }
}

oraz Form2

using System;
using System.Windows.Forms;

namespace Quiz_2
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
            SetDesktopLocation(300, 300);
            label1.Text = Form1.obj1.pyt;
            radioButton1.Text = Form1.obj1.odp1;
            radioButton2.Text = Form1.obj1.odp2;
            radioButton3.Text = Form1.obj1.odp3;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            if (Form1.GetCheckedRadio(groupBox1) == null)
            {
                MessageBox.Show("Wybierz odpowiedź");
            }
            else
            {
                if (Form1.GetCheckedRadio(groupBox1).Text == Form1.obj1.poprawna)
                {
                    Form1.punkty++;
                }
                this.Hide();
                Form1.f3.Show();
            }            
        }

        private void Form2_FormClosed(object sender, FormClosedEventArgs e)
        {
            Application.Exit();
        }
    }
}

problem polega na tym, że do label.text lub radioButton.text nie przenosi mi wartości obiektu, mimo, że jest to string. Dlaczego tak się dzieje? Dopiero się uczę więc z góry dziękuję za wyjaśnienie w prostych słowach :)

1

konstruktor Pytanie() przypisuje coś parametrom wywołania zamiast przyisać polom obiektu

0

OK jasne :) głupi błąd :) Dziękuję za pomoc :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1