Konuyu görüntüle
IUCODERS FORUM > Programlama > .NET > ASP.NET Sayfalama?
Yazar
lprn


avatar
Istanbul
Kayıt: 20.04.2011
20.04.2011-21:04 #74369
Merhaba.
Projemde bir Accordion'um var. Bunun içerisindeki Header ve Content Templateler veritabanından çekilen bilgilerle listelenmektedir. 10'luk sayfalar halinde listelemek istiyorum. DataPager kullanmaya çalıştım ama beceremedim.

Kısacası DataPageri kullanarak Accordion'daki verileri nasıl sıralandırabilirim?

Konu hakkında bilgisini paylaşanlara şimdiden teşekkür ederim.





Yazar
cokomastik


avatar

Kayıt: 14.09.2008
20.04.2011-23:25 #74373
doğrusu accordionu hiç kullanmadım ama listview kullandın mı sayfalama için?





Yazar
lprn


avatar
Istanbul
Kayıt: 20.04.2011
20.04.2011-23:46 #74374
Listview denedim ama accordionu içerisine yerleştiremedim. Sadece listview kullanınca istediğim efekti kullanamıyorum. buda işime yaramıyor. =(





Yazar
greenrock


avatar
istanbul
Kayıt: 18.08.2008
21.04.2011-00:50 #74375
Sayfalama için kendi pager classını yazarsan bence daha uygun olur.
UpdatePanel içinde accordion'un olur.Bunun hemen altında bir katman sayfa numaralarını göstermek için. Sayfa sayısını kaç tane AccordionPane olucaksa ona göre set etmen ve sayfa numaralarını basman gerekiyor.ToplamKayıt/Her sayfada gösterilicek pane gibi

Her tıklanan sayfa numarasındada numaraya göre Accordion'un AcconrdionPane lerini doldurabilirsin.
Bunu da sql tarafında storeprocedure yaparak yaparsan halledebilirsin.1-10 arası kayıt 20-20 arasın kayıt falan gibi. yada Datanın hepsini datatable at cache 'e at ordan getir götür....





Yazar
abbas


avatar
ist
Kayıt: 29.03.2008
21.04.2011-11:55 #74378
sana tavsiyerm asp:repeater ile listeleme işlemlerini yap, tasarımsal olarak istediğin kadar müdahale edebiliyorsun...
projelerimde sürekli kullandığım fonksiyonu paylaşıyorum...
    public string getLinks(int dataNumber,int page,int limit)
    {
        string returnString = "";

        if (page == 0)
        {
            page = page + 1;
        }

        int pageNumber = (dataNumber / limit) + 1;
        int limitt = 4; //sayfaların kacarli gruplar halinde gosterecegini belirler
        int bottom = page - limitt; // dongu icin alt sinir
        int top = page + limitt; // dongu icin ust sinir

        //eger alt sınır 1 den küçük bir değer ise 1 olarak belirlenir
        if (bottom < 1)
        {
            bottom = 1;
        }
		
        //eger üst sınır sayfa sayısından fazlaysa üst sınır sayfa sayısına eşitlenir
        if (top > pageNumber)
        {
            top = pageNumber;
        }

        //eger limitt degerinden büyükse en başa dönmek için ekranda <<<< şeklini çıkartır 
        if (page > limitt)
        {
            returnString += "<a href='?page=1' > <<< </a> ";
        }

        //belirlenen alt ve üst sınırları kullanarak sayfaları ekrana yazdırır. css kodlarını kullanarakta 
        //eğer aktif sayfa ise ona ait bir css class , 

        //eğer pasif yani seçili olmaya bir sayfa ise ona ait bir css class kullanılır.
        for (int i = bottom; i <= top; i++)
        {
            if (page == i)
            {
                returnString += "<a class='pagingActive' href='?page=" + i + "'>" + i + "</a> ";
            }
            else
            {
                returnString += "<a class='pagingPasive' href='?page=" + i + "'>" + i + "</a> ";
            }

        }

        //üst sınır sayfa numarasından büyükse en son sayfaya gitmek için >>>>
        if (top < pageNumber)
        {
            returnString += "<a href='?page=" + pageNumber + "' > >>> </a> ";
        }

        return returnString;
    }


ilgili fonksiyon repeater ile listelemede kullanabilirsin...





/(::)(::)/











Yazar
lprn


avatar
Istanbul
Kayıt: 20.04.2011
21.04.2011-15:41 #74381
Cevaplar için teşekkürler. Bitirmem gereken birkaç iş var ardından tavsiyelerinize göre yapmaya çalışacağım. Başarabilirsem eğer bunu burada paylaşırım. Tekrar teşekkürler.





Yazar
lprn


avatar
Istanbul
Kayıt: 20.04.2011
23.04.2011-01:33 #74393
Sonunda oldu =) Başka bir forum sitesinde tavsiye üzerine indirip kullandığım CollectionPager.dll'si ile istediğim şeyi yapabildim. Aynı şekilde sorunu olanlar bu dll'i kullanabilir internette küçük bir araştırmayla rahatlıkla bulunabilecek birşey. Herkese teşekkürler.





Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb