【问题标题】:PagedDatasource for gridview paging用于gridview分页的PagedDatasource
【发布时间】:2011-10-31 23:06:08
【问题描述】:

我正在使用 PagedDataSource 进行 gridview 的自定义分页。代码如下:

PagedDataSource dataSource = new PagedDataSource();

int virtualRowCount = Convert.ToInt32(dataset.Tables[1].Rows[0]["TotalRows"]);
dataSource.AllowCustomPaging = true;
dataSource.PageSize = 15;

dataSource.VirtualCount = virtualRowCount;
dataSource.DataSource = dataset.Tables[0].DefaultView;


gvTaxPayerLoginDetail.DataSource = dataSource;
gvTaxPayerLoginDetail.DataBind();

我从我的存储过程(在 virtualRowCount 中设置)返回“totalrows”以及数据集tables[0] 中的实际行。我得到了结果,但是我的寻呼机不见了。寻呼机不再显示。如何告诉 gridview 从 PagedDataSource 中获取值?

使用 ASP.Net 4

【问题讨论】:

  • 请你接受这个答案,因为我认为你不会看到太多动静。

标签: asp.net gridview paging custompaging


【解决方案1】:
PagedDataSource dataSource = new PagedDataSource();

int virtualRowCount = Convert.ToInt32(dataset.Tables[1].Rows[0]["TotalRows"]);

dataSource.DataSource = dataset.Tables[0].DefaultView;

dataSource.AllowCustomPaging = true;
dataSource.PageSize = 15;
dataSource.VirtualCount = virtualRowCount;
dataSource.CurrentPageIndex  =0;

gvTaxPayerLoginDetail.DataSource = dataSource;
gvTaxPayerLoginDetail.AllowPaging=True;
gvTaxPayerLoginDetail.DataBind();

【讨论】:

    【解决方案2】:

    ASP.NET 2.0+ 版本

    这篇文章http://www.codewrecks.com/blog/index.php/2008/02/09/aspnet-20-gridview-custom-sorting-with-pageddatasource/ 扩展了标准 GridView 并提供了实现 PagedDataSource 集成的管道代码。

    ASP.NET 4.5 版本

    在 GridView 以及 Paged 数据源属性上设置 AllowPaging 和 AllowCustomPaging 属性?

    PagedDataSource dataSource = new PagedDataSource();
    
    int virtualRowCount = Convert.ToInt32(dataset.Tables[1].Rows[0]["TotalRows"]);
    dataSource.AllowCustomPaging = true;
    dataSource.PageSize = 15;
    
    dataSource.VirtualCount = virtualRowCount;
    dataSource.DataSource = dataset.Tables[0].DefaultView;
    
    gvTaxPayerLoginDetail.AllowPaging = true; // See this line here
    gvTaxPayerLoginDetail.AllowCustomPaging = true; // and this line here
    gvTaxPayerLoginDetail.DataSource = dataSource;
    gvTaxPayerLoginDetail.DataBind();
    

    另外这篇文章也可能对http://www.byteblocks.com/post/2012/03/20/Use-Custom-Paging-in-Grid-View.aspx有帮助

    【讨论】:

    • 很抱歉错过了您对框架版本的评论!我认为 AllowPaging 存在吗?
    • 是的,但由于某种原因,VirtualCount 属性被忽略了
    • 已经用 2.0+ 版本更新了我的答案,不过我会留意侵入性较小的机制!还赞成这个问题很有趣! ;o)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    • 2010-11-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多