Durgut » C#

Kategoriler Listesini DataListe HyperLink olarak atamak

(4 mesaj(lar))
  1. csharp

    offline
    Üye

    Merhaba Arkadaşlar,
    Amacım DataList e kategorileri linkButton yada HyperLink ile göstermem gerek.
    Ve yanında o kategoriye ait ürünlerin sayısını sadece sayısı yani,kaç row(satır) oldugunu göstermek.(www.ihalebulteni.com)
    DAOs sınıfımda yazdıgım GetKategoriList() methodunda,
    public static IEnumerable<TBLKATEGORI> GetKategoriList()
    {
    using (kamuihaleDataContext db = new kamuihaleDataContext())
    {
    var sorgu = (from c in db.TBLKATEGORIs select c);
    return sorgu;
    }
    }
    Elimde yaklaşık kırk kategori var.
    Bana göre bu kod (tabii içinde selected item template var)aşagıdaki kod işi bitirmeli.
    Bu arada eval,datasource kullanmak yasak arkadaşlar.
    Herşey arka planda kodda yapılacak.Bunları nasıl yapabilirim.
    Fikirlerinizi bekliyorum hoşcakalın.

    protected void Page_Load(object sender, EventArgs e)
    {
    DataListKategori();
    }
    public void DataListKategori()
    {
    dtKategori.DataSource = DAOs.GetKategoriList();
    dtKategori.DataBind();
    }

    serdarkaracay.blogspot.com | 0531 775 16 59 | msn : csharp221@yahoo.com

    2 years önce #
  2. Timuçin

    offline
    Üye

    Örneğin DataList deki ItemTemplate içine yerleştirdiğin hypIhaleSayisi ID li hyperlink e bu değeri code behind tarafından atamak için ItemDataBound event ini kullanabilirsin.

    void Item_Bound(Object sender, DataListItemEventArgs e)
    {
    if (e.Item.ItemType == ListItemType.Item ||
    e.Item.ItemType == ListItemType.AlternatingItem)
    {
    TBLKATEGORI category = (TBLKATEGORI)e.Item.DataItem;

    HyperLink hypIhaleSayisi = (HyperLink)e.Item.FindControl("hypIhaleSayisi");
    hypIhaleSayisi.Text = category.Name;
    hypIhaleSayisi.NavigateUrl = "Category.aspx?cId=" + category.CategoryId;

    }
    }

    seklinde kullanabilirsin.

    2 years önce #
  3. csharp

    offline
    Üye

    Timuçin cevapladığın için teşekkür ederim.
    Burada Hyperlink içerisine sadece Kategorilerin listeledigi ihaleleri verecegim hyper link in yanınada hemen label açıp ihale sayısını verecektim.
    örnek olarak http://www.ihalebulteni.com u inceleyebilirsin.
    Oradaki (inşaat,sağlık,gida)onun gibi olacak.

    Hoşcakal.

    2 years önce #
  4. Timuçin

    offline
    Üye

    TBLKATEGORI category = (TBLKATEGORI)e.Item.DataItem;

    Bu satırda o anki category e ulasiyorsun.

    Label lblIhaleSayisi = (Label)e.Item.FindControl("lblIhaleSayisi");

    burdada Label e erişiyorsun.Sonra o kategori ye ait ihalelerin sayısını döndüren bi method yazabilirsin.

    lblIhaleSayisi.Text = DAO.GetIhaleCountByCategoryId(category.CategoryId).ToString();

    seklinde de her kategoriye ait ihale sayısını listelersin

    2 years önce #

Bu konu için RSS beslemesi

Cevapla

Mesaj göndermek için giriş yapmalısınız.