C# İki labeli toplattırma

Merhaba bir formum var resimdeki gibi:
Ekran Alıntısı

Bu fromda 2 olay var.
1.Olay Price denilen kısıma sayı giriliyor ve listview e ekleniyor. 2 Tane fiyat girilince girilen fiyatları topluyor. Yani listviewin toplamını eşittir le gösterdiğim yerde topluyor.

2.olay Discount amount yazılan yere sayı giriliyor ve label9 yazan yere, “-”+girilen sayı şeklinde giriyor yani şöyle bir görüntü oluyor -20.

Yani Total discount ile eşittirli labeli çıkarma işlemi yaptırıp “TOTAL FREE PAYABLE” yazan yere yazdırmak istiyorum.
Kodlar;

#Add Butonu listviewe girilen sayıları topluyor ve labele yazdırıyor
public void button1_Click(object sender, EventArgs e)
        {
            ListViewItem lv = new ListViewItem();
            lv.Text = textBox1.Text;
            lv.SubItems.Add(textBox2.Text);
            listView1.Items.Add(lv);

            double toplam = 0;

            double[] topla = new double[listView1.Items.Count]; // sonuç ondalıklı değer çıkabilir, işimizi sağlama alabilmek için double kullandık

            for (int i = 0; i < listView1.Items.Count; i++) //Listviewdeki tüm değerleri alabilmek için for kullandık
            {

                topla[i] = Convert.ToDouble(listView1.Items[i].SubItems[1].Text.ToString());// burada dikkat edilmesi gereken, SubItems değeri 2 kolon olduğu için 0. kolon ürünün adı 1. kolon ise fiyatı göstermekte

                toplam = toplam + topla[i];

            }

            lblsonuc.Text = Convert.ToString(toplam);
            fullToplam.Text = lblsonuc.Text;
        }
#"Make a discount" butonu label9 a ,discount amount yazan yerin değerini giriyor.
        private void btnİndirim1_Click(object sender, EventArgs e)
        {
            int sayi1;
            sayi1 = Convert.ToInt32(txtİndirim1.Text);
            indirim.Text = "-"+sayi1.ToString();
        }

Doğru mu anladım bilmiyorum.

1) Price’e girilen değerler listview’e ekleniyor.
2) listview’e eklenen değerler toplanarak = label’ına atanıyor.
3) Discount Amonut textbox’ına girilen değer önüne - işareti alıyor.
4) Önüne eksi işareti alan değer label9’a atanıyor.
5) = label’ına atanan değer ile label9’a atanan değerin farkını alıp Total Fee Payable label’ına atamak istiyorsunuz, doğru mudur?

Şöyle bir durum var “Toplam Ödenecek Tutar=Tutar - İndirim” mantıken böyledir.*
Ama siz Tutar ile İndirimin farkını almak istemişsiniz burda mantık hatası yok mu?
Eğer doğru anlamışsam siz kodunuzda değişiklik yapmadan şu şekilde yapabilirsiniz:*

lbl_Total_Free_Py.Text = Convert.ToString(Convert.ToInt32(lbl_Esittir.Text) + Convert.ToInt32(lbl_9.Text));

Bir de naçizane can alıcı tavsiyem, form’da kullandığınız her tool’a yapılacak işe en uygun name’i vermeniz hem sizin hem de bir başkasının kodu okumasını kolaylaştıracaktır. Aksi halde proje büyüdükçe textbox1,2,3…'ler, label1,2,3…'ler Sarı Çizmeli Mehmet Ağaya döner.*

1 Beğeni

Doğrudur hocam haklısınız. Bu sorunu sızın verdıgınız mantıkla yaptım sonradan mantık hatası oldugunu anladım. İndirim yerine yazılan değeri değişkene atadım public olarak sonra bunu toplam ile çıkardım. Sağolun.

1 Beğeni