Как да създам персонализирано страниране на повторител с SQLDataSource?

Докато разглеждаше препълването на стека, член предложи това урок. Изглежда, че наистина може да работи, но е непълно.

в долната част на своя код отзад той използва a

private Control FindControlRecursive(Control root, string id) { }

които той премахна за яснота. Опитах се да го разреша, като го попълня по този начин, но не се получи

private Control FindControlRecursive(Control root, string id) 
    {
        if (rootControl.ID == controlID) return rootControl;

        foreach (Control controlToSearch in rootControl.Controls)
        {
            Control controlToReturn =
                FindControlRecursive(controlToSearch, controlID);
            if (controlToReturn != null) return controlToReturn;
        }
        return null;
    }

Другият проблем около това е, че тъй като публикацията е толкова стара, се съмнявам, че все още се следи.


person Skullomania    schedule 05.07.2013    source източник


Отговори (1)


Опитах се да работя с този урок преди няколко месеца и го намерих твърде крехък за това, от което се нуждаех. В крайна сметка открих тази статия от Джули Лерман и оттогава тя ми служи добре .

Едно от готините неща при странирането е, че е сравнително лесно за прилагане, след като разберете променливите, които трябва да следите. Статията на Джули използва рамката на обекта, но концепциите, които тя обсъжда, са почти идентични с тези, които ще трябва да разберете, когато внедрявате функцията с SQLDataSource.

Накратко, трябва да следите само две неща: колко записа искате да се показват на страница, на коя страница се намирате и незадължителна трета променлива - сортиране на вашите данни. След като ги свалите, вие сте само на един хвърлей от напълно функционален повторител с възможност за пейджинг. :)

Редактиране – Ако използването на рамката на обекта от Джули е твърде абстрактно за вашата ситуация, можете да се обърнете към тази статия, която наподобява по-близо конкретното ви внедряване.

person Daniel Szabo    schedule 05.07.2013