Hi there,
I cannot get the correct pagesize selected when I use AllowCustomPaging="true".
When you look in the code below I can see PAGESIZE_NEW is set to the new pagesize selected (f.e. 50) in the grHit_PageSizeChanged event.
After that it hits the grHit_NeedDataSource event. The PAGESIZE variable is set to it's original value of 25 instead of 50 like the value in the grHit_PageSizeChanged event.
Any idea?
I am using Telerik: 202.3.1016.35.
Regards,
Marcel
I cannot get the correct pagesize selected when I use AllowCustomPaging="true".
When you look in the code below I can see PAGESIZE_NEW is set to the new pagesize selected (f.e. 50) in the grHit_PageSizeChanged event.
After that it hits the grHit_NeedDataSource event. The PAGESIZE variable is set to it's original value of 25 instead of 50 like the value in the grHit_PageSizeChanged event.
Any idea?
I am using Telerik: 202.3.1016.35.
Regards,
Marcel
<html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>HitGrid</title> </head> <body> <telerik:RadGrid ID="grHit" runat="server" OnNeedDataSource="grHit_NeedDataSource" OnDetailTableDataBind="grHit_DetailTableDataBind" OnPageSizeChanged="grHit_PageSizeChanged" OnItemCreated="grHit_ItemCreated"> <MasterTableView AutoGenerateColumns="False" AllowSorting="true" AllowNaturalSort="false" AllowFilteringByColumn="true" AllowPaging="true" AllowCustomPaging="true" DataKeyNames="Date hit, User id, Application id, Function id"> <Columns> <telerik:GridDateTimeColumn UniqueName="coDateHit" HeaderText="Date" MinDate="1899/12/30" DataField="Date hit" > </telerik:GridDateTimeColumn> <telerik:GridBoundColumn UniqueName="coUserName" HeaderText="User" DataField="User name" > </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="coFunctionName" HeaderText="Function" DataField="Function name" > </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="coIPAddress" HeaderText="IP address" DataField="User host address" > </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="coBrowser" HeaderText="Browser" DataField="Browser" > </telerik:GridBoundColumn> </Columns> <DetailTables> <telerik:GridTableView Name="HitDetail" AutoGenerateColumns="False" ShowHeader="false" Width="100%"> <Columns> <telerik:GridBoundColumn UniqueName="coColumn1" DataField="Column 1" > </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="coColumn2" DataField="Column 2" > </telerik:GridBoundColumn> </Columns> </telerik:GridTableView> </DetailTables> </MasterTableView> </telerik:RadGrid> </body></html>public partial class HitGrid : System.Web.UI.UserControl { public int WIDTH { //totale breedte set { grHit.Width = Unit.Percentage(value); } } override protected void OnInit(EventArgs e) { InitializeComponent(); base.OnInit(e); } private void InitializeComponent() { //sorting Telerik.Web.UI.GridSortExpression sortExpr = new Telerik.Web.UI.GridSortExpression(); sortExpr.FieldName = "Date hit"; sortExpr.SortOrder = Telerik.Web.UI.GridSortOrder.Descending; grHit.MasterTableView.SortExpressions.AddSortExpression(sortExpr); //paging grHit.PageSize = Convert.ToInt16(ConfigurationManager.AppSettings.Get("Page size")); } protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //initialise HITGRID_INIT(); } } private void HITGRID_INIT() {} protected void grHit_ItemCreated(object sender, Telerik.Web.UI.GridItemEventArgs e) { if (e.Item is Telerik.Web.UI.GridFilteringItem) { Telerik.Web.UI.GridFilteringItem FilterItem = e.Item as Telerik.Web.UI.GridFilteringItem; //User TextBox txtUserName = FilterItem["coUserName"].Controls[0] as TextBox; txtUserName.Width = Unit.Pixel(100); //Function TextBox txtFunctionName = FilterItem["coFunctionName"].Controls[0] as TextBox; txtFunctionName.Width = Unit.Pixel(100); //IP address TextBox txtIPAddress = FilterItem["coIPAddress"].Controls[0] as TextBox; txtIPAddress.Width = Unit.Pixel(80); //Browser TextBox txtBrowser = FilterItem["coBrowser"].Controls[0] as TextBox; txtBrowser.Width = Unit.Pixel(100); } } protected void grHit_NeedDataSource(object source, Telerik.Web.UI.GridNeedDataSourceEventArgs e) { int PAGESIZE = grHit.PageSize; //get hits NMHG.Data.NMHGHome.HOH100PF.GetHits2 HOH100PF_List = new NMHG.Data.NMHGHome.HOH100PF.GetHits2(); HOH100PF_List.H1APID = ""; HOH100PF_List.H1USID = ""; HOH100PF_List.PageNumber = grHit.CurrentPageIndex; HOH100PF_List.Main(); //fill grid grHit.DataSource = HOH100PF_List.HitTable; //set virtual item count grHit.VirtualItemCount = HOH100PF_List.COUNT; } protected void grHit_PageSizeChanged(object source, Telerik.Web.UI.GridPageSizeChangedEventArgs e) { int PAGESIZE_NEW = e.NewPageSize; } protected void grHit_DetailTableDataBind(object source, Telerik.Web.UI.GridDetailTableDataBindEventArgs e) { Telerik.Web.UI.GridDataItem DataItem = (Telerik.Web.UI.GridDataItem)e.DetailTableView.ParentItem; switch (e.DetailTableView.Name) { case "HitDetail": //Hit detail //get hit NMHG.Data.NMHGHome.HOH100PF.Hit HOH100PF = new NMHG.Data.NMHGHome.HOH100PF.Hit(); HOH100PF.H1DATE = (DateTime)DataItem.GetDataKeyValue("Date hit"); //Date hit HOH100PF.H1USID = DataItem.GetDataKeyValue("User id").ToString(); //User id HOH100PF.H1APID = DataItem.GetDataKeyValue("Application id").ToString(); //Application id HOH100PF.H1FNID = DataItem.GetDataKeyValue("Function id").ToString(); //Function id HOH100PF.GetHit(); //initialise datatable DataTable HitTable = new DataTable("Hit detail data"); HitTable.Columns.Add("Column 1", System.Type.GetType("System.String")); HitTable.Columns.Add("Column 2", System.Type.GetType("System.String")); //Date DataRow HitRow = HitTable.NewRow(); HitRow["Column 1"] = "Date:"; HitRow["Column 2"] = HOH100PF.H1DATE; HitTable.Rows.Add(HitRow); //get username NMHG.Data.NMHGHome.AUUS00PF.User AUUS00PF = new NMHG.Data.NMHGHome.AUUS00PF.User(); AUUS00PF.USUSID = HOH100PF.H1USID; AUUS00PF.GetUser(); //User HitRow = HitTable.NewRow(); HitRow["Column 1"] = "User:"; HitRow["Column 2"] = AUUS00PF.USUSNM; HitTable.Rows.Add(HitRow); //get application function name NMHG.Data.NMHGHome.AUAF00PF.ApplicationFunction AUAF00PF = new NMHG.Data.NMHGHome.AUAF00PF.ApplicationFunction(); AUAF00PF.AFAPID = HOH100PF.H1APID; AUAF00PF.AFFNID = HOH100PF.H1FNID; AUAF00PF.GetApplicationFunction(); //Function HitRow = HitTable.NewRow(); HitRow["Column 1"] = "Function:"; HitRow["Column 2"] = AUAF00PF.AFFNNM; HitTable.Rows.Add(HitRow); //URL HitRow = HitTable.NewRow(); HitRow["Column 1"] = "URL:"; HitRow["Column 2"] = HOH100PF.H1URL; HitTable.Rows.Add(HitRow); //IP address HitRow = HitTable.NewRow(); HitRow["Column 1"] = "IP address:"; HitRow["Column 2"] = HOH100PF.H1ADDR; HitTable.Rows.Add(HitRow); //Platform HitRow = HitTable.NewRow(); HitRow["Column 1"] = "Platform:"; HitRow["Column 2"] = HOH100PF.H1PLAT; HitTable.Rows.Add(HitRow); //Browser HitRow = HitTable.NewRow(); HitRow["Column 1"] = "Browser:"; HitRow["Column 2"] = HOH100PF.H1BRWS; HitTable.Rows.Add(HitRow); //fill grid grHit.DataSource = HitTable; break; } } }