none
Checkboxlist'e ürün adı ve ürün fiyatları gösterme RRS feed

  • Soru

  • Veritabanında bulunan ürün adı ve fiyatı alanlarını chekboxliste gösterme ve seçilen ürünleri tek bir müşteriye atama işlemini nasıl yapabilirim.?

    Ben sadece ürün adı veya fiyatını yazdırabiliyorum, ikisini göstermeyi bulamadım.

    bu konuda yardımcı olur musunuz?

    .cs kodlarım aşağıdaki şekilde.

    SqlCommand cmd = new SqlCommand("Select * from tProduct where Active = 1", Conn);
            SqlDataReader reader = cmd.ExecuteReader();
            chxProduct.DataSource = reader;
            chxProduct.DataValueField = "Id";
            chxProduct.DataTextField = "ProductName";
            chxProduct.DataBind();
            Conn.Close();


    Yev.Tasarım Web Tasarım & Programlama

    27 Kasım 2015 Cuma 12:20

Yanıtlar

  • //sorgunu
    Select *, ProductName + N' Fiyat:' + convert(nvarchar, ProductPrice) as NameAndPrice from tProduct where Active = 1

    //şeklinde değiştirdikten sonra;
    chxProduct.DataTextField = "NameAndPrice";
    şeklinde denermisin

    www.mvcblog.org
    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com


    27 Kasım 2015 Cuma 14:08
    Moderatör

Tüm Yanıtlar

  • Demek istediğinizi tam anlamadım hocam ama ikisini bir checkboxda göstermek istiyorsanız stringbuilder kullanabilirsiniz... Yardım olamadıysam kusura bakmayın ... İyi çalışmalar...
    27 Kasım 2015 Cuma 12:31
  • hocam şöyleki bir müşteri tablom var ve buraya müşteri ekliyorum.

    müşteri eklerken ise ürünler tablomdan ürünadı ve fiyatı göstermem gerekiyor. bunu da birden fazla ürün seçilebilmesi için checkbox kullanmam gerektiğini düşünüyorum. 

    chxProduct.DataTextField = "ProductName";

    yukarıdaki kod ile sadece birini ekranda gösterebiliyorum ama ürün adının yanında fiyatta yazsın istiyorum. bunu nasıl yapabilirim ?

    Sayfamın ekran görüntüsü şu şekilde

    http://screenshot.co/#!/6d453bdc17


    Yev.Tasarım Web Tasarım & Programlama


    27 Kasım 2015 Cuma 12:50
  • ürünler tablonda bulunan ürün ve fiyat kolonlarını birleştirmen gerekiyor. Anladığım kadarıyla Checkbox'ta tek kolon gösterebiliyorsun.

    Yani Bir Sorgu Yazmalısın. İster Sql'de, İster kod kısmında bunu yapabilirsin ADO.net kullanıyorsun gördüğüm kadarıyla.

    Örnek Bir View Kodu:

    Tablo Adı: URUN

    Kolonlar: ID(int), URUN_ADI(nvarchar(50)), FIYAT(decimal(18,2)),

    SELECT        ID, URUN_ADI + ' - ' + CONVERT(nvarchar(10), FIYAT) AS Urun
    FROM            dbo.URUN

    C# Linq Yöntemi ile de şu şekilde yapabilirsin;

    var urunlist = db.URUNs.Select(u => new { u.ID, Urun = URUN_ADI + Convert.ToString(u.FIYAT) }).ToList();

    ve Son Olarak Yukarıdaki Sorguya Göre

    chxProduct.DataTextField = "Urun"; Olmalı.


    27 Kasım 2015 Cuma 14:08
  • //sorgunu
    Select *, ProductName + N' Fiyat:' + convert(nvarchar, ProductPrice) as NameAndPrice from tProduct where Active = 1

    //şeklinde değiştirdikten sonra;
    chxProduct.DataTextField = "NameAndPrice";
    şeklinde denermisin

    www.mvcblog.org
    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com


    27 Kasım 2015 Cuma 14:08
    Moderatör
  • Hocam dediğiniz gibi oldu teşekkürler, bir sorum daha olacak bununla ilgili, seçilen ürünlerin fiyalarını nasıl toplatıp bir label'e yazdırabilirim ? 

    Yev.Tasarım Web Tasarım & Programlama

    28 Kasım 2015 Cumartesi 09:41
  • O zaman şöyle yapalım.

    //Oluşturduğun Urun Sorgunu Listeye Atabilmek için Tanımlanabilir bir hale getiriyoruz. class URUNLER { public int ID { get; set; } public string URUN { get; set; } public double FIY { get; set; } } //Tanımlanabilir Hale Getirdiğimiz Ürünlerimizi Atacağımız Liste. List<URUNLER> urunlist = new List<URUNLER>(); //Ve Seçilen Ürünlerin Fiyatlarını Toplamak için Gereken ID'leri için Bir Liste. List<int> urunidlist = new List<int>(); //Ürünlerini Page_Load yada hangi olayda yüklüyorsan oraya urunlist.AddRange(db.URUNs.Select(u => new URUNLER { ID = u.ID, URUN = u.URUN_ADI + Convert.ToString(u.FIYAT), FIY = Convert.ToDouble(u.FIYAT) }).ToList()); CheckBoxList1.DataSource = urunlist; CheckBoxList1.DataTextField = "URUN"; CheckBoxList1.DataValueField = "ID"; CheckBoxList1.DataBind(); //ürün fiyatlarını bir butonun click olayına ya da bunu gerçekleştirmek istediğin herhangi bir olaya urunidlist.Clear(); foreach (ListItem item in CheckBoxList1.Items) { if (item.Selected) urunidlist.Add(Convert.ToInt32(item.Value)); }

    if (urunidlist.Count() > 0) { lbltop.Text = Convert.ToString(urunlist.Where(p => urunidlist.Contains(p.ID)).Sum(x => x.FIY)); } else { lbltop.Text = "Ürün Seçiniz..."; }

    Linq ile haızrladım. ama ado.net ile bile olsa bu yazılanların neredeyse tamamını kullanabilirsin.


    28 Kasım 2015 Cumartesi 17:46