ASP.NET DataGrid和自定义分页
发布时间:2020-05-23 23:17:09 所属栏目:asp.Net 来源:互联网
导读:我正在尝试在ASP.NET中实现DataGrid,并希望实现自定义分页,这样我就不必一次性提供所有数据.我花了几个小时在网上研究,但没有找到任何有用的东西. 当我查看页面时,我看到网格中的第一组结果,前一个链接被禁用.然而,当我单击下一步时,我再次看到网格的第一页,
|
我正在尝试在ASP.NET中实现DataGrid,并希望实现自定义分页,这样我就不必一次性提供所有数据.我花了几个小时在网上研究,但没有找到任何有用的东西. 当我查看页面时,我看到网格中的第一组结果,前一个链接被禁用.然而,当我单击下一步时,我再次看到网格的第一页,其中前一个链接被禁用.在调试代码时,我确定永远不会调用MyGrid_PageIndexChanged()事件处理程序. 我在下面提供了简化代码.我已经更改了变量名称和省略方法,专注于数据网格分页问题. 在ASPX文件中: <asp:DataGrid ID="myGrid" runat="server" GridLines="None" UseAccessibleHeader="true" AutoGenerateColumns="false" AllowPaging="true" AllowCustomPaging="true" PageIndexChanged="MyGrid_PageIndexChanged"> <PagerStyle Mode="NextPrev" NextPageText="Next >" PrevPageText="< Previous" /> <Columns> <asp:BoundColumn HeaderText="Title" DataField="Name" /> <asp:BoundColumn HeaderText="Date" DataField="Date" /> </Columns> </asp:DataGrid> 并在CS文件中: protected void Page_Load(object sender,EventArgs e)
{
if (!IsPostBack)
{
myGrid.PageSize = 20;
myGrid.VirtualItemCount = GetNumItems();
BindMyGrid();
}
}
protected void MyGrid_PageIndexChanged(object sender,DataGridPageChangedEventArgs e)
{
myGrid.CurrentPageIndex = e.NewPageIndex;
BindMyGrid();
}
private int GetNumItems()
{
return 500;
}
private void BindMyGrid()
{
Data[] array = GetDataFromInternetSomehow();
this.myGrid.DataSource = array;
this.myGrid.DataBind();
}
private class Data
{
public string Date { get; set; }
public string Name { get; set; }
}
对此的任何想法将非常感激. 解决方法ASPX中存在错误:连接PageIndexChanged事件处理程序使用属性OnPageIndexChanged(而不是代码中的PageIndexChanged):<asp:DataGrid ID="myGrid" runat="server" OnPageIndexChanged="MyGrid_PageIndexChanged" /// <--- here's the error ... 然后,如果您有AllowCustomPaging =“true”,则必须确保GetDataFromInternetSomehow()方法仅返回当前所选页面的数据,例如将当前页面传递给方法并仅返回相应的数据: GetDataFromInternetSomehow(e.NewPageIndex); 否则,禁用自定义分页,它将正常工作(但每次都会加载所有数据). (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 在ASP.NET中如何检测上传文件的MIME类型?
- asp.net-mvc – ASP.NET MVC日历
- .net – 如何修复System.Data.Edm.EdmEntityType没有键
- 实体框架 – 实体框架验证混淆 – 最大字符串长度为’128′
- asp.net-mvc – 什么是ASP.NET MVC不适合?
- asp.net-mvc – 与SmtpClient.UseDefaultCredentials属性混
- asp.net-mvc – 在ASP.NET MVC中检测中止的请求
- asp.net-mvc-3 – 使用csvhelper(nuGET)和C#MVC导入CSV文件
- asp.net – 在Response.RedirectToRoute之后跳过页面执行的
- ASP.NET MVC 4 JSON绑定到视图模型 – 嵌套对象错误
推荐文章
站长推荐
- asp.net-mvc-3 – AZURE ACS – Windows Live ID
- asp.net-mvc – ASP.NET MVC应用程序自定义错误页
- ASP.NET批量下载文件的方法
- 如何使用asp.net webapi获取Json Post Values
- asp.net-mvc – 在使用ModelBinder之前更改文化
- 在ASP.NET中如何检测上传文件的MIME类型?
- 依赖性 – 安装RavenDb Embedded的Nuget依赖性错
- asp.net-mvc – 如何在单个视图中使用两个表单
- asp.net-mvc – 是否可以在基于路由的MVC4中使用
- asp.net – Gridview编辑,点击两次问题
热点阅读
