标签: datapager

ASP.Net:DataPager Control总是落后于分页

采用以下示例...一个带有a ListView和a 的页面,DataPager用于分页ListView:

代码背后:

protected void Page_Load(object sender, EventArgs e)
{
    MyList.DataSource = GetSomeList();
    MyList.DataBind();
}
Run Code Online (Sandbox Code Playgroud)

资源:

<asp:ListView ID="MyList" runat="server">
    <% //LayoutTemplate and ItemTemplate removed for the example %>
</asp:ListView>

<asp:DataPager ID="ListPager" PagedControlID="MyList" runat="server" PageSize="10">
    <Fields>
        <asp:NumericPagerField  />
    </Fields>
</asp:DataPager>
Run Code Online (Sandbox Code Playgroud)

问题DataPager在于它始终是绑定的后盾.

例如,当页面加载它在页码1时.然后当您单击第3页时,它在回发后保留在第1页.然后你点击第5页,在回发后它在第3页找到自己...然后你点击第6页,它在第5页找到自己......依此类推.

为什么分页不按预期工作?

c# asp.net listview datapager

25
推荐指数
2
解决办法
3万
查看次数

Silverlight,DataPager,RIA服务和智能分页

我仍然试图通过Silverlight和RIA Services来实现我的目标,当然还要从一些更"有趣"的东西开始,比如网格和智能分页.我可以连接到RIA Services(使用自行开发的ORM,而不是L2S或EF),在网格上获取数据,并连接到DataPager.域服务与本土ORM一起运行良好,至少对于查询而言.(仍在使用完整的CRUD.)但是,仍然存在问题:

  1. 为了支持用户应用程序,除了智能分页(仅运行查询显示所需的行)和分组之外,我还需要用户控制的排序和过滤.

  2. 到目前为止,我在DataGrid或DataPager中没有看到任何外部化这些功能的内容,因此可以将过滤,排序和分页参数传递给服务器以构建适当的查询.

  3. 数据集可能非常大; 我选择用于原型制作工作的我的表可以在一些客户中拥有多达35,000个条目,我确信还有其他更大的表格,我将不得不在某个时候处理.因此,"智能寻呼"方面至关重要.

我们欢迎您的想法,建议,指导和nerf砖.

silverlight-3.0 datapager wcf-ria-services

13
推荐指数
1
解决办法
9169
查看次数

如何在服务器端分页中使用DataPager?

我正在尝试使用DataPager进行服务器端分页.这是我的代码

<asp:DataPager ID="pgrFooBars" PagedControlID="lvFooBars" 
    QueryStringField="page" runat="server" >
<Fields>
    <asp:NumericPagerField />
</Fields>
</asp:DataPager>
Run Code Online (Sandbox Code Playgroud)

代码背后

protected void Page_Load(object sender, EventArgs e)
{
    ConfigureBlogPostListView();
}

private void ConfigureBlogPostListView()
{
    int pageNum;
    int.TryParse(Request.Params["page"], out pageNum);
    int pageSize = 20;

    PagedList<IFooBar> FooBars = FooService.GetPagedFooBars(
        new PagingSettings(pageNum, pageSize));

    ListViewPagedDataSource ds = new ListViewPagedDataSource();
    ds.AllowServerPaging = true;
    ds.DataSource = FooBars;
    ds.MaximumRows = pageSize;
    ds.StartRowIndex = pageNum;
    //TotalCount is the total number of records in the entire set, not just those loaded.
    ds.TotalRowCount = FooBars.TotalCount;

    lvFooBars.DataSource = ds; …
Run Code Online (Sandbox Code Playgroud)

asp.net server-side datapager

13
推荐指数
2
解决办法
2万
查看次数

格式化asp:DataPager以在ul li中显示

我正在使用Twitter Bootstrap和ASP.Net C#Webforms构建一个网站.我的页面上有一个ListView,它绑定了一个DataPager,但我需要改变.Net呈现DataPager的HTML的方式.

目前,所有寻呼机项目都显示如下:

<div class="clearfix pagination pagination-centered"> <span id="cpBody_dpListing"> <a class="aspNetDisabled">First</a>&nbsp;<span>1</span>&nbsp; <a href="javascript:__doPostBack('ctl00$cpBody$dpListing$ctl02$ctl01','')">2</a>&nbsp; <a href="javascript:__doPostBack('ctl00$cpBody$dpListing$ctl03$ctl00','')">Last</a>&nbsp; </span> </div>
Run Code Online (Sandbox Code Playgroud)

但是我需要将所有项目包装在无序列表中,而不是跨度和标签.我目前的加价看起来像这样:

<div class="clearfix pagination pagination-centered">
<asp:DataPager ID="dpListing" runat="server" PagedControlID="lvListing" PageSize="10" OnPreRender="dpListing_PreRender">
    <Fields>
        <asp:TemplatePagerField>
            <PagerTemplate>
                <asp:BulletedList ID="listPages" runat="server" DisplayMode="LinkButton" OnClick="listPages_Click"></asp:BulletedList>
            </PagerTemplate>
        </asp:TemplatePagerField>
        <asp:NextPreviousPagerField ButtonType="Link" ShowFirstPageButton="true" ShowNextPageButton="false" ShowPreviousPageButton="false" />
        <asp:NumericPagerField PreviousPageText="&lt; Prev 10" NextPageText="Next 10 &gt;" ButtonCount="10" />
        <asp:NextPreviousPagerField ButtonType="Link" ShowLastPageButton="true" ShowNextPageButton="false" ShowPreviousPageButton="false" />
    </Fields>
</asp:DataPager>
Run Code Online (Sandbox Code Playgroud)

我不知何故需要覆盖NextPreviousPagerField和NumericPagerField,因此它们输出<li>标签而不是<span>和<a>.

c# asp.net datapager twitter-bootstrap

13
推荐指数
3
解决办法
1万
查看次数

自定义ASP.Net DataPager生成的HTML

我在我的web项目中使用ListView和DataPager进行分页.它工作正常,但生成的分页HTML只是一个包含一些超链接的span.

我想自定义HTML并在无序列表中显示链接(ul).

有人知道如何做到这一点?我能想到的一种方法是CSSFriendly适配器,但如果有更简单的方法,我不想这样做.

编辑:有人可以帮助我完成在模板中创建控件所需的确切步骤吗?抱歉愚蠢,但我无法想象这一部分,尽管广泛的谷歌搜索.

asp.net datapager

6
推荐指数
1
解决办法
1万
查看次数

DataPager EventArgs

我在Silverlight应用程序中使用DataPager控件.我为不同的DataGrids设置了不同的寻呼机,并希望为所有这些事件使用相同的事件处理程序来处理PageIndexChanged事件.委托必须将EventArgs对象作为参数.我可以使用此对象"返回"触发事件的控件吗?

silverlight event-handling datapager page-index-changed

5
推荐指数
1
解决办法
590
查看次数

在代码中设置PageSize时,DataPager停止工作

我有一个标准的ASP.Net DataPager,带有标准的ListView(使用DataTable作为数据源).

当我在设计代码中设置PageSize ="24"时:

<asp:DataPager runat="server" ID="DataPager1" PagedControlID="ListView1" QueryStringField="page" PageSize="24" >
Run Code Online (Sandbox Code Playgroud)

分页的工作方式与宣传的一样.

但是,当我在代码中更改它时,在Page_Load中,例如:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    DataPager1.PageSize = 48
End Sub
Run Code Online (Sandbox Code Playgroud)

分页停止完全工作,而初始加载的数据集确实是48项.

我在代码中看不到会影响这一点的任何内容,所以我想知道我是否遗漏了一些东西 - 我应该改变别的东西吗?

问候

vb.net asp.net datapager

4
推荐指数
1
解决办法
2984
查看次数

如何在Asp.net 3.5中使用GridView和DataPager执行服务器端分页?

我有一个webform,它使用gridview控件来显示搜索操作的结果.

我想利用webform中的分页功能.但是众所周知,gridview分页是一个客户端分页,它将所有已经选择的记录传送给客户端.客户端分页的意思是客户端(页面)逐页显示记录,但每次用户单击页面链接以浏览记录时,所有记录都从数据源中选择.

如何使用gridView和datapager来实现服务器端分页?或者通过配置我们的查询逐页获取记录的任何其他解决方案?

asp.net pagination gridview datapager

3
推荐指数
1
解决办法
6519
查看次数

设置DataPager的PageIndex

我有一个ListView,我正在使用DataPager进行分页.我想在Page_Load上设置寻呼机的初始页面.我已经尝试了DataPager.SetPageProperties方法,但它没有做我需要的.以下是我调用此方法的方法:

dataPager.SetPageProperties(3, dataPager.TotalRowCount, false);
Run Code Online (Sandbox Code Playgroud)

上面的行修剪数据源以从第三个项开始,并且分页仍然从1开始.这不是我想要的.我想保留整个项目列表,然后跳转到列表中的特定页面.

我应该使用DataPager和/或ListView的另一个属性和/或方法吗?

任何帮助将不胜感激.

谢谢!

c# asp.net paging listview datapager

3
推荐指数
1
解决办法
1万
查看次数

如何设置ASP.NET DataPager省略号的样式

我正在使用DataPager对ListView进行分页,我将NumericPagerField的ButtonCount属性设置为5,以将要显示的页码的最大数量限制为5.但是,当这样做时,当超过5个页面时,它显示1或2个椭圆(...).有没有办法对这些椭圆进行设计或使它们消失?

编辑:我想澄清一点.我想要做的是当总页数超过ButtonCount属性时隐藏在DataPager中的省略号(可能通过样式显示:无,但我找不到为它设置css样式的方法).请看下面的图片

在此输入图像描述

这是我的代码:

<asp:DataPager ID="datapager" PageSize="16" PagedControlID="someId" runat="server"
                QueryStringField="page">
                ...
                <Fields>
                    <asp:NumericPagerField RenderNonBreakingSpacesBetweenControls="false" NumericButtonCssClass="someClass other"
                        CurrentPageLabelCssClass="someClass current" ButtonCount="4" />
                </Fields>
                ...
            </asp:DataPager>
Run Code Online (Sandbox Code Playgroud)

如您所见,我为数字按钮和页面标签设置了css类,但它不适用于省略号.所以我无法在样式表中选择省略号.任何的想法?

asp.net ellipsis datapager

2
推荐指数
1
解决办法
3047
查看次数

使用多个datapagerfield多次调用objectDatasource中的SelectMethod

好的,所以这里是设置.我正在构建一个页面,其中包含一个listview,一个datapager和3个datapagerfield(2个NextPreviousPagerField,1个NumericPagerField),以及一个objectdatasource来将所有这些结合在一起.

在我将一个断点放入objectdatsource控件中指定的SelectMethod之前,一切正常.对于每个datapagerfield控件,它似乎都在调用selectmethod和selectcount方法.因此,无论何时用户进行分页,它都会调用数据库6次而不是2次(我没有打开缓存atm).如果我删除一个datapagerfield,它将删除2个调用.

现在这是在VS2008中的asp.net 3.5 SP1中构建的.当我将相同的代码文件复制到asp.net 4.0 VS2010解决方案时,它的重复调用似乎已经消失.

这是asp.net 3.5 SP1中的错误吗?

提前致谢

asp.net listview objectdatasource datapager

1
推荐指数
1
解决办法
3767
查看次数