zoukankan      html  css  js  c++  java
  • AspNetPager 分页显示

            在视频播放系统中视频介绍页有一个对视频评论的页面,在这个页面访问网站的用户可以添加评论和查看评

    论,添加评论是没问题的,但是查看评论稍微有点难度,在牛腩视频中的分页是假分页,他是把所有的评论都加载到

    页面中,这样就给页面带来了很大的压力,并且查询上也是很大的工作量,所以我们就考虑使用真分页。


            真分页是把所需要的页面的评论显示出来,而不是加载所有的评论,这样我们的页面压力和美观上都有了很大的

    改善用户可以任意选择自己需要看的那一页,并且数据查询方面也是非常的简单。

           真分页显示需要的控件是AspNetPager,这个控件是一个山西人写的,非常的好用。

    添加控件将aspNetPager添加到工具栏,然后添加到页面。添加到页面之后需要设置AspNetPager的属性,当然默认

    下的也可以正常显示,只是那是最简单的,如果你想要更多的效果,可以设置属性,如:上一页、下一页、首页、显

    示搜索框………………,这样就会让你的页面丰富很多,也很方便,如果数据量大的话,可以加入搜索框。

            然后就是页面的代码:
            1.页面加载时需要载入评论,默认显示是第一页,每页的显示条数自己定,一般是10到20条,淡然首先要给aspNetPage.RecordCount=dt.rows.count(评论总数)

            2.之后就是加载数据,

    1. <span style="font-size:18px;">/// <summary>  
    2.     ///在分页中加载数据   
    3.     /// </summary>  
    4.     /// <param name="CourseId"></param>  
    5.     /// <param name="pageSize"></param>  
    6.     /// <param name="PageNum"></param>  
    7.     protected  void   LoadData(int CourseId, int pageSize, int PageNum)   
    8.     {  
    9.         DataTable dt = new DataTable();  
    10.         VideoCommentManager objVideoCommentManager = new VideoCommentManager();  
    11.         aspPagerComment.PageSize = 10;    //设置每页显示数目  
    12.         aspPagerComment.RecordCount = objVideoCommentManager.GetCount( int.Parse(HFCourseId.Value));             //获得评论总数  
    13.         if (aspPagerComment.RecordCount < 10)  
    14.         {  
    15.             aspPagerComment.Visible = false;  
    16.         }  
    17.         else  
    18.         {  
    19.             aspPagerComment.Visible = true;  
    20.         }  
    21.         dt = objVideoCommentManager.GetCommentsByVideoCourseID(int.Parse(HFCourseId.Value), pageSize, PageNum);  
    22.          
    23.         RepeaterComment.DataSource = dt;  //将数据绑定repeater控件  
    24.         RepeaterComment.DataBind();  
    25.           
    26.     }  
    27. </span><pre name="code" class="html"><span style="font-size:18px;">3.选择需要的页面时  
    28.      /// <summary>  
    29.     /// 评论换页  
    30.     /// </summary>  
    31.     /// <param name="sender"></param>  
    32.     /// <param name="e"></param>  
    33.     protected void aspPagerComment_PageChanged(object sender, EventArgs e)  
    34.     {  
    35.         LoadData(int.Parse(HFCourseId.Value), aspPagerComment.PageSize, aspPagerComment.CurrentPageIndex);  
    36.     }</span>  

    
    
    数据库的sql语句是根据页码和每页显示数,来查询特定页的数据
    1. <span style="font-size:18px;">         sql="with temptb as(select ROW_NUMBER() over(order by conmmentTIme desc)as rowNum, * from VideoComment where [videoCourseId]=@videoCourseId)select * from temptb where rowNum between @startIndex and @endIndex"  
    2.         
    3.        这样我们的真分页就完成了,当然我们如果想让分页控件显示的好看些我们可以,在css中设置控件的格式,让我们的页面的更加美观。  
    4.    
    5.            但是需要注意的是:如果我们的控件不显示下面三点要注意:  
    6. </span>  

    1、要分页的记录总数只要一页且AlwaysShow设为false(默认),当然如果只有一页的时候,设置为false,就不会显示。
    2、Visible属性设为false;
    3.未设置RecordCount的值
    1. </pre></blockquote><pre>  
  • 相关阅读:
    c#语音报时(含完整的声音资源文件).rar
    SQL 查看数据库表的容量大小
    c# 鼠标在控件上拖动 移动窗体 移动窗口
    C# winform 右下角弹出窗口结果
    Qt通用方法及类库8
    Qt通用方法及类库7
    Qt通用方法及类库6
    Qt通用方法及类库5
    Qt通用方法及类库4
    Qt通用方法及类库3
  • 原文地址:https://www.cnblogs.com/Kung/p/paging.html
Copyright © 2011-2022 走看看