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;
}
}
}