views:

2046

answers:

1

Hi iam using infragistics ultarawebgrid in my appliccation when i use custompaging iam not able to retrive the specified no of records per page

the code i written is string[] cusLabel;

in the grid initialise

grid.DisplayLayout.Pager.AllowCustomPaging = true; grid.DisplayLayout.Pager.AllowPaging = true;
grid.DisplayLayout.Pager.StyleMode = PagerStyleMode.CustomLabels; grdSysManager.DisplayLayout.Pager.PageSize = 3; getCustomLabel(); grdSysManager.DisplayLayout.Pager.CustomLabels = cusLabel;

private void getCustomLabel() { DataTable dt = (DataTable)grdSysManager.DataSource; DataSet ds = new DataSet(); ds = dt.DataSet; //ds = (DataSet)grdSysManager.DataSource; int NoOfRows = ds.Tables[0].Rows.Count; int PageSize = grdSysManager.DisplayLayout.Pager.PageSize; if (NoOfRows % PageSize == 0) { totalNoOfPagings = NoOfRows / PageSize; } else { totalNoOfPagings = (NoOfRows / PageSize) + 1; }

    cusLabel = new string[totalNoOfPagings + 2];

    cusLabel[0] = "First";

    for (int i = 1; i <= totalNoOfPagings; i++)
    {
        cusLabel[i] = i.ToString();
    }


    cusLabel[totalNoOfPagings + 1] = "Last";
}

above is the code i written but it is displaying all the records from the table instead of 3 reords per page is i missing any thing

thanks

A: 

I believe that PageSize is the number of custom labels, when you're using custom paging. In order to give the grid only three rows per page, you have to give it only three rows in the grid's DataBinding event.

Custom paging with this grid isn't just about the custom appearance of the pager - it's about you taking control of most of the paging process yourself. The grid will display your custom labels, and it will make them all into hyperlinks except for the one indicated as the current page. When you click one of the links, the PageIndexChanged will be raised, and it will tell you the index of the link that was clicked. What you do with that index is up to you.

John Saunders