Hi
This is ny gridView, my data source is a data table with a lot of image, these image need create in run time, but create too much image need a lot of time, so i hope when i do page change, i just create image on next page index, but when i change page index to 2 but i always get page index 1 in BeginCallback function, i need get next index not pre indexx, is any function can get it?
C#@model HMIWebServer.Models.GridViewData
@Html.DevExpress().GridView(
settings => {
settings.Name = "myGridView";
settings.CallbackRouteValues = new { Controller = "HMIWeb", Action = "RefreshGridViewPartial" };
settings.ClientSideEvents.ColumnSorting = "GetSortedColumnIndex";
settings.ClientSideEvents.DetailRowCollapsing = "GetDetailRow";
settings.CommandColumn.ShowSelectCheckbox = true;
settings.CommandColumn.Width = 40;
settings.Width = Unit.Percentage(100);
settings.Height = 1000;
settings.Settings.HorizontalScrollBarMode = ScrollBarMode.Auto;
settings.Settings.VerticalScrollBarMode = ScrollBarMode.Auto;
settings.Settings.VerticalScrollableHeight = 500;
settings.SettingsBehavior.AllowFocusedRow = true;
settings.SettingsPager.PageSize = 10;
settings.SettingsPager.NumericButtonCount = 4;
settings.KeyFieldName = "Index";
settings.SettingsBehavior.AllowSort = false;
if (Model.GridViewTable != null && Model.GridViewTable.Columns.Count > 1)
{
settings.SettingsPopup.HeaderFilter.Height = 100;
int ColumnIndex = 0;
foreach (System.Data.DataColumn column in Model.GridViewTable.Columns)
{
if (column.DataType == System.Type.GetType("System.Byte[]"))
{
settings.Columns.Add(column.ColumnName, MVCxGridViewColumnType.BinaryImage);
settings.Columns[ColumnIndex].Width = 100;
}
else
{
settings.Columns.Add(column.ColumnName);
settings.Columns[ColumnIndex].Width = 80;
}
ColumnIndex++;
}
}
settings.CommandColumn.ShowSelectCheckbox = true;
settings.CommandColumn.ShowClearFilterButton = true;
settings.CommandColumn.SelectAllCheckboxMode = GridViewSelectAllCheckBoxMode.AllPages;
settings.CommandColumn.Visible = true;
settings.ClientSideEvents.BeginCallback = "OnGridBeginCallback";
settings.ClientSideEvents.EndCallback = "OnGridEndCallback";
settings.ClientSideEvents.FocusedRowChanged = "OnGridFocusedRowChanged";
settings.ClientSideEvents.SelectionChanged = "OnGridViewSelectionChanged";
settings.PreRender = (sender, e) =>
{
ASPxGridView gridView = (ASPxGridView)sender;
for (int i = 0; i < gridView.VisibleRowCount; i++)
{
gridView.Selection.SetSelection(i, true);
}
};
}).Bind(Model.GridViewTable).GetHtml()