none
C# anlık oluşturulan buton Birden fazla veri çekme RRS feed

  • Soru

  • Merhaba,

    Anlık oluşturduğum butona Masa Numarasını getirebiliyorum fakat o masada adisyon varsa Adisyon Toplamını da Getirmek istiyorum. Bunu bir türlü yapamadım. Kafayı yemek üzereyim. Yardımcı olursanız sevinirim.

    Yazdığım kodlar aşağıdaki gibidir.

    panel_masalar.Controls.Clear();
                bool kontrolum = true;
                SqlCommand komutum = new SqlCommand();
                komutum.Connection = SqlClass.Baglan;
                komutum.CommandText = "Select * From TBL_MASA ";
                SqlClass.Baglan.Open();
    
                SqlDataReader okur = komutum.ExecuteReader();
                {
                    kontrolum = true;
                    SqlClass.Baglan.Close();
                    if (kontrolum == true)
                    {
                        SqlClass.Baglan.Open();
                        SqlCommand cmd = new SqlCommand("Select * From TBL_MASA where DepartmanAdi='"+txt_DepartmanAdi.Text+"' ", SqlClass.Baglan);
                        SqlDataReader dr = cmd.ExecuteReader();
                        while (dr.Read())
                        {
                            
                            Button Masa = new Button();
                            Controls.Add(Masa);
                            Masa.ForeColor = Color.BlueViolet;
                            Masa.Image = Image.FromFile("Masadetay1.png");
                            Masa.ImageAlign = ContentAlignment.TopLeft;
                            Masa.TextAlign = ContentAlignment.TopCenter;
                            Masa.ForeColor = Color.Black;
                            Masa.Text = String.Concat("" + dr["MasaAdi"]);
                            
                            Masa.Size = new System.Drawing.Size(120, 80);
                            Masa.AutoSize = false;
                            int newSize = 8;
                            Masa.Font = new Font(Masa.Font.FontFamily, newSize);
                            Masa.ForeColor = Color.Black;
                            Masa.Location = new Point(10, 10);
                            Masa.Tag = Convert.ToInt32(dr["id"]);
                            Masa.Click += new EventHandler(Masa_Click);
                            panel_masalar.Controls.Add(Masa);
                            
                        }
                        SqlClass.Baglan.Close();
                    }
                }


    19 Mart 2019 Salı 01:06

Yanıtlar

  • Masa.Text = String.Concat("" + dr["MasaAdi"]);

    yerine,

    Masa.Text = String.Format("{0} ({1:#,##0.00} TL)", dr["MasaAdi"], dr["Toplam"]);
    
    // "Toplam" yerine tablonuzdaki 
    // adisyon toplamı kolonunun adını yazın.

    yazın.


    Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...

    • Yanıt Olarak İşaretleyen Chenk83 20 Mart 2019 Çarşamba 12:01
    19 Mart 2019 Salı 06:48

Tüm Yanıtlar

  • Yazdığınız kodda SQL injection açığı var gidermek için parametre kullanın.Ayrıca adisyon toplamınıda mı button.text özelliğine yazacaksın ? Bana fazla karışık oluyor gibi geldi onun yerine kendin bir user control oluştursan daha şık durabilir. 
    19 Mart 2019 Salı 06:08
  • Masa.Text = String.Concat("" + dr["MasaAdi"]);

    yerine,

    Masa.Text = String.Format("{0} ({1:#,##0.00} TL)", dr["MasaAdi"], dr["Toplam"]);
    
    // "Toplam" yerine tablonuzdaki 
    // adisyon toplamı kolonunun adını yazın.

    yazın.


    Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...

    • Yanıt Olarak İşaretleyen Chenk83 20 Mart 2019 Çarşamba 12:01
    19 Mart 2019 Salı 06:48
  • Merhaba,

    Nasıl yapacağım hakkında bilgi verebilirseniz denerim hocam

    20 Mart 2019 Çarşamba 12:04
  • Hocam bu şekilde geliyor ama ben butona tıkladığımda S01 17,00TL geliyor bunu sadece S01 olarak getirebilir miyim?
    20 Mart 2019 Çarşamba 12:35