Пользовательский пейджинг с Radgrid не работает - PullRequest
0 голосов
/ 05 января 2012

Я искал ответы на разные вопросы здесь, но не могу найти что-то, что я могу использовать, я новичок в RadGrid. Материал всегда использовал GridView, но теперь они изменили их на RadGrids, и один из них должен иметь пользовательский пейджинг, есть пример здесь , и я пытаюсь его использовать, но я не уверен, как это сделать, если мой источник данных - это набор данных, см. ниже

                AdminManager adminMan = new AdminManager();
                DataSet ds = adminMan.GetProducts();

                int startRowIndex = (ShouldApplySortFilterOrGroup()) ?
                   0 : Grid.CurrentPageIndex * Grid.PageSize;


                int maximumRows = (ShouldApplySortFilterOrGroup()) ?
   **HERE NOT SURE HOW TO TRANSLATE THIS SO THAT I CAN USE IT
                     MyBusinessObjectCollection1.SelectCount() : RadGrid1.PageSize;**

                Grid.AllowCustomPaging = !ShouldApplySortFilterOrGroup();

      **HERE NOT SURE HOW TO TRANSLATE THIS SO THAT I CAN USE IT
              RadGrid1.DataSource = MyBusinessObjectCollection1.Select(startRowIndex, maximumRows);**

Как вы видите, я не уверен, как транслировать этот пример кода при использовании набора данных. Посмотрите части, где я отмечаю: «Здесь не уверен, как перевести…». Любая помощь будет признательна.

Привет

Ответы [ 2 ]

1 голос
/ 05 января 2012

Я немного запутался в проблеме, поэтому я собираюсь привести свой пример того, как ДЕЙСТВИТЕЛЬНО работал, и, возможно, это поможет вам в ваших усилиях.Для начала я установил их на сетке:

<!-- Set pageSize to whatever you want -->
<tel:RadGrid .. AllowPaging="true" AllowCustomPaging="true" PageSize="10" />

В коде, когда время связывать, я делаю это:

//need to pass the total number of records there are; this is used to build
//the paging list
this.RadGrid1.VirtualItemCount = totalNumberOfRows;

//Bind the filtered resultset that has only 10 or whatever the page size amount of records are
this.RadGrid1.DataSource = x;
this.RadGrid1.DataBind();

По сути, вы связываете отфильтрованный результат, но устанавливаетеколичество виртуальных предметов до общего количества записей.RadGrid также должен поддерживать привязку к DataSet, так что это не должно быть проблемой.

0 голосов
/ 22 января 2014

это сработало для меня.

http://www.telerik.com/community/forums/aspnet-ajax/grid/pager-arrows-problem-when-databinding-in-page-load.aspx

$('.rgPageFirst').live('click', function () {
    __doPostBack(this.name, '');
    return false;
});

$('.rgPageNext').live('click', function () {
    __doPostBack(this.name, '');
    return false;
});

$('.rgPagePrev').live('click', function () {
    __doPostBack(this.name, '');
    return false;
});

$('.rgPageLast').live('click', function () {
    __doPostBack(this.name, '');
    return false;
});

$('.rgCollapse').live('click', function () {
    __doPostBack(this.name, '');
    return false;
});

$('.rgExpand').live('click', function () {
    __doPostBack(this.name, '');
    return false;
});

$('.rgExrgNumPart').live('click', function () {
    __doPostBack(this.name, '');
    return false;
});
...