asp.net – 来自CodeBehind的GridView在C#Paging中无法正常工作
发布时间:2020-12-16 07:11:10 所属栏目:asp.Net 来源:网络整理
导读:当我点击在我的GridView上它不会转到下一组记录. DataGrid dataGrid = new DataGrid(); dataGrid.PageSize = 5; dataGrid.AllowPaging = true; dataGrid.EnableViewState = true; dataGrid.DataSource = customerDataTable; dataGrid.AllowPaging (); if (!I
|
当我点击>在我的GridView上它不会转到下一组记录.
DataGrid dataGrid = new DataGrid();
dataGrid.PageSize = 5;
dataGrid.AllowPaging = true;
dataGrid.EnableViewState = true;
dataGrid.DataSource = customerDataTable;
dataGrid.AllowPaging ();
if (!IsPostBack)
{
dataGrid.DataBind();
}
根据我的代码,它会保留在前5个或网格不显示. 我已经尝试过进出IsPostBack的DataBind(). 我也尝试过添加 dataGrid.PageIndexChanged += new DataGridPageChangedEventHandler(dataGrid_PageIndexChanged); 和 void dataGrid_PageIndexChanged(object source,DataGridPageChangedEventArgs e)
{
DataGrid dg = (DataGrid)source;
dg.DataBind();
}
但我不能让这个工作.我究竟做错了什么? 谢谢! 解决方法
这是一个例子,我试图重新创建你的场景,它的工作原理.看看这个.
protected void Page_Load(object sender,EventArgs e)
{
GridView GridView1 = new GridView();
Panel1.Controls.Add(GridView1);
GridView1.DataSource = GetList();
GridView1.AutoGenerateColumns = true;
GridView1.EnableViewState = true;
GridView1.AllowPaging = true;
GridView1.PageSize = 4;
GridView1.DataBind();
GridView1.PageIndexChanging += new GridViewPageEventHandler(GridView1_PageIndexChanging);
}
void GridView1_PageIndexChanging(object sender,GridViewPageEventArgs e)
{
if (sender != null)
{
GridView GridView1 = sender as GridView;
GridView1.PageIndex = e.NewPageIndex;
GridView1.DataBind();
}
}
public class Person
{
public String Name { get; set; }
public int Age { get; set; }
}
private IEnumerable<Person> GetList()
{
List<Person> list = new List<Person>();
list.Add(new Person() {Age = 12,Name = "asdfsd"});
list.Add(new Person() {Age = 13,Name = "sdfsdaf"});
list.Add(new Person() {Age = 14,Name = "zxczxv"});
list.Add(new Person() { Age = 15,Name = "zxczxv" });
list.Add(new Person() { Age = 16,Name = "zxczxv" });
list.Add(new Person() { Age = 17,Name = "zxczxv" });
return list;
}
在标记中,您只需拥有面板即可 <asp:Panel ID="Panel1" runat="server"> 编辑: 这是使用DataGrid的相同场景 protected void Page_Load(object sender,EventArgs e)
{
DataGrid dataGrid = new DataGrid();
Panel1.Controls.Add(dataGrid);
dataGrid.DataSource = GetList();
dataGrid.AutoGenerateColumns = true;
dataGrid.EnableViewState = true;
dataGrid.AllowPaging = true;
dataGrid.PageSize = 4;
dataGrid.DataBind();
dataGrid.PageIndexChanged +=new DataGridPageChangedEventHandler(dataGrid_PageIndexChanged);
}
void dataGrid_PageIndexChanged(object source,DataGridPageChangedEventArgs e)
{
if (source != null)
{
DataGrid dataGrid = source as DataGrid;
dataGrid.CurrentPageIndex = e.NewPageIndex;
dataGrid.DataBind();
}
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 如何在回发asp.net按钮之前运行javascript函数?
- ASP.NET C#使用列表导航如何在活动导航页面上设置id =“cur
- asp.net – SignalR:如何强制认证/终止中心连接服务器端
- asp.net – 如何使用Docx dll生成word文档时在标题中添加图
- entity-framework – 在新配置下在EF7中切换ProxyCreation
- kendo-ui – Kendo UI ASP.NET MVC网格数据源过滤器值为nul
- asp.net – 调用HttpClient.GetAsync时出错:基础连接已关闭
- asp.net-mvc – JsonIgnore在System.Web.Mvc.Controller中不
- 动态类型dynamic转换为特定类型T的方案
- 增加ASP.net WebForm性能
推荐文章
站长推荐
- asp.net – 在int类型的Web服务参数上设置minOcc
- Asp.net MVC 集成AD域认证
- asp.net-mvc – 将自定义属性添加到MSBuild任务
- asp.net-mvc – Autofac:解决最内层范围的任何方
- asp.net – specflow的.msi安装程序和它的nuget包
- asp.net-mvc-3 – 存储库模式和Azure表存储(???)
- asp.net-mvc – 在使用ModelBinder之前更改文化
- asp.net-mvc-3 – 剃刀索引视图中的条件格式
- asp.net repeater手写分页实例代码
- asp.net-mvc-3 – Appharbor URL中的端口号导致页
热点阅读
