• 03-01-2013, 22:53:53
    #1
    Üyeliği durduruldu
    Öncelikle Merhabalar Arkadaşlar Aşağıdaki programda bir sıkıntı var. Kullanıcı Checkbox'lardan birden fazla tıklayabilir yani birden fazla kurs seçebilir. Fakat 2. checbox yada 3. checkbox yalnız başına tıklanıldığı zaman önceki ücretin üzerine ücret ekleye ekleye label'e yazıyo. Fakat Checkbox'ın üzerindeki Fiyatı yazmıyor. Yardımlarınızı Bekliyorum Teşekkürler...

     public Form1()
            {
                InitializeComponent();
            }
    
            bool tampon = true;
    
            double toplam = 0;
    
            private void radioButton1_CheckedChanged(object sender, EventArgs e)
            {
                if (tampon == false)
                {
                    tampon = true;
                    return;
                }
                
                RadioButton secilen = sender as RadioButton;
    
                // checkboxes
                if (checkBox1.Checked)
                    toplam = 50;
    
                if (checkBox1.Checked || checkBox2.Checked)
                    toplam =toplam + 25;
    
                if (checkBox3.Checked)
                    toplam += 100;
    
    
                // radio buttons
                if (secilen.Text == "Başlangıç")
                {
                    toplam = toplam;
                    label2.Text = "";
                }else
                if (secilen.Text == "Orta")
                {
                    toplam = toplam * (1 - 0.1);
                    label2.Text = "Orta seviye - Indirim %10";
                }
                else if (secilen.Text == "İleri")
                {
                    toplam = toplam * (1 - 0.15);
                    label2.Text = "İleri seviye - Indirim %15";
                }
    
                textBox1.Text = string.Format("${0:#,#.00}", toplam);
    
                tampon = false;
            }
  • 04-01-2013, 17:06:54
    #2
    sorun tam açık değil maalesef.

    fiyat artışı toplam değişkenine bağlıysa eklemesi normal zten çünkü her radioButton1_CheckedChanged eventi tetiklendiğinde

    ilgili checkboxlar bu şekilde kontrol ediliyor

    if (checkBox1.Checked)
    toplam = 50;

    if (checkBox1.Checked || checkBox2.Checked)
    toplam =toplam + 25;

    if (checkBox3.Checked)
    toplam += 100;


    haliyle işaretlenmişse toplam a tekrar değer ekleniyor
    bu eklenmeyi istemiyorsanız radioButton1_CheckedChanged metodunun hemen altına toplam =0; yazın. bu sayede üst üste eklenmez..

    bu dediğim sorunu çözmediyse daha açık şekilde sorunuzu sorun lütfen