pagination gridview NullReferenceException
bonjour,
j'ai créé une gridview et tout semble bien fonctionner, mais quand j'active la pagination j'ai une erreur.
voici le code de ma gridview:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| Panel pnl = new Panel();
DataTable dt = web.GetSiteData(query);
DataView dv = new DataView(dt);
/*ici j'ajoute les colonnes .......*/
pnl.Controls.Add(grid);
grid.AutoGenerateColumns = false;
grid.BorderWidth = 0;
grid.AllowPaging = true;
grid.PageIndex = 0;
grid.PageSize = 5;
grid.PagerSettings.Position = PagerPosition.Bottom;
grid.EnableSortingAndPagingCallbacks = true;
grid.PageIndexChanging+=new GridViewPageEventHandler(grid_PageIndexChanging);
grid.DataSource = dv;
grid.DataBind();
protected void grid_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
grid.PageIndex = e.NewPageIndex;
grid.DataBind();
} |
l'erreur obtenue est la suivante:
Citation:
[NullReferenceException: La référence d'objet n'est pas définie à une instance d'un objet.]
System.Web.UI.WebControls.GridView.get_StateFormatter() +41
System.Web.UI.WebControls.GridView.BuildCallbackArgument(Int32 pageIndex) +59
System.Web.UI.WebControls.GridView.CreateNumericPager(TableRow row, PagedDataSource pagedDataSource, Boolean addFirstLastPageButtons) +1438
System.Web.UI.WebControls.GridView.InitializePager(GridViewRow row, Int32 columnSpan, PagedDataSource pagedDataSource) +263
System.Web.UI.WebControls.GridView.CreateRow(Int32 rowIndex, Int32 dataSourceIndex, DataControlRowType rowType, DataControlRowState rowState, Boolean dataBind, Object dataItem, DataControlField[] fields, TableRowCollection rows, PagedDataSource pagedDataSource) +136
System.Web.UI.WebControls.GridView.CreateChildControls(IEnumerable dataSource, Boolean dataBinding) +3773
System.Web.UI.WebControls.CompositeDataBoundControl.PerformDataBinding(IEnumerable data) +71
System.Web.UI.WebControls.GridView.PerformDataBinding(IEnumerable data) +17
System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data) +146
System.Web.UI.WebControls.DataBoundControl.PerformSelect() +260
Alti.PortailOffres.Solution.IISHandler1.ProcessRequest(HttpContext context) +1446
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +598
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +170
quelqu'un aurait-il une idée?