- 浏览: 1626193 次
- 性别:
- 来自: 福州
文章分类
- 全部博客 (583)
- strust2.0 (14)
- hibernate2.0 (5)
- java (13)
- javaScript (59)
- AJAX (8)
- TFS (6)
- 其它 (20)
- CSS (23)
- asp (18)
- Dojo (5)
- 项目管理 (3)
- SQLServer (25)
- oracle (26)
- .NET (221)
- 开源系统 (6)
- 常识 (41)
- 软件架构 (1)
- My SQL (1)
- SilverLight (10)
- Flex (1)
- window7 (1)
- 网络安全 (2)
- CMS (1)
- ECShop (4)
- 邮件系统 (9)
- Linq (0)
- 淘宝店铺经营宝典 (0)
- flash插件 (1)
- Hubble.net全文检索 (1)
- 在线编辑器 (1)
- 正则表达式 (1)
- 创业 (1)
- asp.net mvc (1)
- 全文检索 (0)
- 全文检索 HubbleDotNet (1)
- Android (27)
- TFS bin (1)
最新评论
-
z小小Jean:
有具体的解决方法吗
用命名imp导入DMP时报无法解析指定的连接标识符的解决办法 -
njoiop:
这些都是常用接口,IP地址、手机归属和身份证查询接口,基站定位 ...
IP地址、手机归属和身份证查询接口 -
Fs_sky:
那导出DMP如何包含序列等其他东西?
在plsql中如何导出dmp文件 -
qiywtc:
请问该怎么判断视频的格式再选择对应的播放格式来播放啊?
asp.net各种类型视频播放代码(全) -
xinghenhouzi:
楼主说的版本不同无法导入导出是什么意思?我用10g的exp.e ...
在plsql中如何导出dmp文件
在.NET平台下处理显示数据时,需要经常使用GridView控件进行分页,虽然它本身提供了分页机制,但总的说来其分页效果较为单调,大部分情况下无法满足客户的需求(也只能让开发人员YY一下而已)。与此同时,GridView提供了多种扩展机制,用户可以在此基础上自行扩展分页功能。现在就对其分页进行相应的扩展
首先,对GridView控件添加一个PagerTemplate,其HTML代码如下所示。
添加的三个Label(lblPageCurrent,lblPageCount,lblPageRow)控件分别用来显示当前页、总页数及总记录数。添加的四个LinkButton控件用来导航。控件准备好之后,就开始写代码,首先需要完成GridView控件的OnDataBound事件(GridView_DataBind),再次需要完成LinkButton的Command事件(NavigateToPage)这一步主要用来导航。其具体代码如下所示。
OK,现在就可以使用我们自定义的分页了,目前网络上使用的分页大部分都是这种样子,因此在进行样式设计时,就直接按照这种模式设计了。其中在控制外观时,使用了一个样式表,其具体代码如下所示。
导航按钮我使用了LinkButton控件,也可以使用ImageButton控件,这样就可以使用自己绘制的图片作为当航提示,从而避免只有文字的光秃效果。
另外,我在计算记录的总数目时,使用的是rowCount = ds.Tables["Books"].Rows.Count这种方法,我一直在想GridView控件应该也能够提供一种获取总记录的方法,只可惜在我写这篇文章时,一直没有发现。那位高手懂得,还望赐教~~~~~~~~~~~~~~~~。Rayshow在此谢过...
转自:http://hi.baidu.com/rayshow/blog/item/aa10248ba5ef8b10c9fc7a67.html
首先,对GridView控件添加一个PagerTemplate,其HTML代码如下所示。
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" PageSize="5" OnDataBound = "GridView_DataBind" CellPadding=2 CellSpacing=0> <PagerTemplate> <div id="main"> <div id="info"> 页次:<asp:Label ID="lblPageCurrent" runat="server" Text="1" CssClass="txtInfo"></asp:Label> /<asp:Label ID="lblPageCount" runat="server" Text="1"></asp:Label> 共 <asp:Label ID="lblPageRow" runat="server" Text="1" CssClass="txtInfo"></asp:Label> 条记录 </div> <div id="page"> <asp:LinkButton ID="btnFirst" runat="server" CssClass="link" CommandName="Pager" CommandArgument="First" OnCommand="NavigateToPage">[首页]</asp:LinkButton> <asp:LinkButton ID="btnPrev" runat="server" CssClass="link" CommandName="Pager" CommandArgument="Prev" OnCommand ="NavigateToPage">[前一页]</asp:LinkButton> <asp:LinkButton ID="btnNext" runat="server" CssClass="link" CommandName="Pager" CommandArgument="Next" OnCommand="NavigateToPage">[下一页]</asp:LinkButton> <asp:LinkButton ID="btnLast" runat="server" CssClass="link" CommandName="Pager" CommandArgument="Last" OnCommand="NavigateToPage">[尾页]</asp:LinkButton> </div> </div> </PagerTemplate> <RowStyle BackColor="#F9F9F9" /> <HeaderStyle BackColor="#EDF7E7" Font-Bold="true" /> <AlternatingRowStyle BackColor="White" /> </asp:GridView>
添加的三个Label(lblPageCurrent,lblPageCount,lblPageRow)控件分别用来显示当前页、总页数及总记录数。添加的四个LinkButton控件用来导航。控件准备好之后,就开始写代码,首先需要完成GridView控件的OnDataBound事件(GridView_DataBind),再次需要完成LinkButton的Command事件(NavigateToPage)这一步主要用来导航。其具体代码如下所示。
public partial class Default : System.Web.UI.Page { int rowCount = 0;//用来记录总记录数 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) GridViewFill(); } private void GridViewFill() { string strConn = "server=localhost\\sqlexpress;database=MyComics;Integrated Security=True"; SqlConnection conn = new SqlConnection(strConn); DataSet ds = new DataSet(); string strSql = "SELECT * FROM Books"; SqlDataAdapter DA = new SqlDataAdapter(strSql, conn); DA.Fill(ds, "Books"); rowCount = ds.Tables["Books"].Rows.Count; //取得总记录数目 this.GridView1.DataSource = ds.Tables["Books"]; this.GridView1.DataBind(); } protected void NavigateToPage(object sender, CommandEventArgs e) { //控制转页 switch (e.CommandArgument.ToString()) { case "First": this.GridView1.PageIndex = 0; break; case "Prev": if (this.GridView1.PageIndex > 0) this.GridView1.PageIndex -= 1; break; case "Next": if (this.GridView1.PageIndex < (this.GridView1.PageCount - 1)) this.GridView1.PageIndex += 1; break; case "Last": this.GridView1.PageIndex = this.GridView1.PageCount - 1; break; } GridViewFill(); } protected void GridView_DataBind(object sender, EventArgs e) { GridViewRow pagerRow = GridView1.BottomPagerRow; //获取Label实例,显示页次信息 Label lblCurrent = (Label)pagerRow.Cells[0].FindControl("lblPageCurrent"); Label lblCount = (Label)pagerRow.Cells[0].FindControl("lblPageCount"); Label lblRow = (Label)pagerRow.Cells[0].FindControl("lblPageRow"); //获取按钮实例,为了控制其是否可用 LinkButton btnFirstTem = (LinkButton)pagerRow.Cells[0].FindControl("btnFirst"); LinkButton btnPrevTem = (LinkButton)pagerRow.Cells[0].FindControl("btnPrev"); LinkButton btnNextTem = (LinkButton)pagerRow.Cells[0].FindControl("btnNext"); LinkButton btnLastTem = (LinkButton)pagerRow.Cells[0].FindControl("btnLast"); if (lblCurrent != null) lblCurrent.Text = (this.GridView1.PageIndex + 1).ToString(); if (lblCount != null) lblCount.Text = this.GridView1.PageCount.ToString(); if (lblRow != null) lblRow.Text = rowCount.ToString(); if (this.GridView1.PageIndex == 0) { btnFirstTem.Enabled = false; btnPrevTem.Enabled = false; //只有一页,所有分页按钮不可用 if (this.GridView1.PageCount == 1) { btnNextTem.Enabled = false; btnLastTem.Enabled = false; } } else if (this.GridView1.PageIndex == (this.GridView1.PageCount - 1)) { btnNextTem.Enabled = false; btnLastTem.Enabled = false; } } }
OK,现在就可以使用我们自定义的分页了,目前网络上使用的分页大部分都是这种样子,因此在进行样式设计时,就直接按照这种模式设计了。其中在控制外观时,使用了一个样式表,其具体代码如下所示。
body { font-size:9pt; } #main { background-color:#EDF7E7; line-height:30px; width:100%; text-align:left; } #info { width: 40%; font-family: Verdana; float:left; text-align:left; } #page { width:60%; float:left; overflow:auto; text-align:right; } .txtInfo { color:#e78a29; } .link { text-decoration:none; color:#474747; }
导航按钮我使用了LinkButton控件,也可以使用ImageButton控件,这样就可以使用自己绘制的图片作为当航提示,从而避免只有文字的光秃效果。
另外,我在计算记录的总数目时,使用的是rowCount = ds.Tables["Books"].Rows.Count这种方法,我一直在想GridView控件应该也能够提供一种获取总记录的方法,只可惜在我写这篇文章时,一直没有发现。那位高手懂得,还望赐教~~~~~~~~~~~~~~~~。Rayshow在此谢过...
转自:http://hi.baidu.com/rayshow/blog/item/aa10248ba5ef8b10c9fc7a67.html
发表评论
-
【转】C#定时执行某个程序
2015-03-16 17:33 672using System; using System. ... -
多行文本框字符数长度验证的解决方案
2012-03-02 16:04 1161在ASP.NET系统中经常会遇到验证文本框长度,比如数据库里是 ... -
【转】asp.net(c#)通过两个点的经纬度计算距离
2012-01-12 14:14 1354原理: 地球赤道上环绕地球一周走一圈共40075.04公里 ... -
【转】GSM手机短信软件的实现(C#)
2011-11-30 13:55 1254http://www.cnblogs.com/Engin/ar ... -
[转]C#开发短信收发软件的原理
2011-11-16 16:44 1614坛子里好像很多人对如何自己用C#开发手机短信有兴趣,正好我也做 ... -
TCPClient 类实现网络互联、通信
2011-10-29 11:16 2904TcpClient 为 TCP 网络服务提供客户端连接。 S ... -
Hubble.Net实现全文检索
2011-07-25 19:30 3989一、 下载安装 到Hubble.net 项目首页 http: ... -
c# 获取当前周第一天、最后一天,当前月第一天、最后一天的实现代码
2011-04-17 18:39 5212获取当前周工作日第一天、最后一天 int dayOfWee ... -
c#通过调用7z.exe实现解压文件
2011-03-05 15:47 46177-Zip 简介 7-Zip 是一款号称有着现今最高压缩比的 ... -
【转】IEnumerable 和 IEnumerator 接口
2011-03-04 17:12 1988类继承关系:public interface IQueryab ... -
【转】C#获取文件的绝对路径
2011-03-04 17:08 2441要在c#中获取路径有好多方法,一般常用的有以下五种: ... -
ListBox之间的数据项的移动操作
2010-09-29 11:04 1515<%@ Page Language="C# ... -
【转】asp.net中URL参数传值中文乱码的三种解决办法
2010-09-21 22:31 3376在做Asp.Net开发的时候,经常会遇到页面乱码的问题,下面是 ... -
【转】ASP.NET文件下载函数
2010-09-21 22:29 1364在你的Page_Load中添加这样的代码: Page.Re ... -
【转】在ASP.NET中实现多文件上传
2010-09-21 22:25 1192在以前的Web应用中,上传文件是个很麻烦的事,现在有了.NET ... -
[转]ASP.NET中常用的文件上传下载方法
2010-09-21 22:23 1782文件的上传下载是我们在实际项目开发过程中经常需要用到的技 ... -
HTML文章中截取摘要的问题[转]
2010-06-09 10:46 1828博客系统通常的做法是,在博客的首页只显示文章的摘要,点击标题进 ... -
获取 asp:Button 控件的的ComandName值的方法
2010-05-22 17:31 1215protected void btn_Save_Click ... -
ASP.NET防止用户多次登录的方法
2010-05-06 12:34 1547常见的处理方法是,在 ... -
使用 Enter 键提交表单
2010-04-27 14:04 1303一、使用 JS 代码 我们在表单里面的 TextBox (as ...
相关推荐
ASP.NET 控件GridView分页 ,最简单的GridView自定义分页
GridView自定义分页及可拖动改变列宽代码 GridView自定义分页及可拖动改变列宽代码 GridView自定义分页及可拖动改变列宽代码 GridView自定义分页及可拖动改变列宽代码 GridView自定义分页及可拖动改变列宽代码 ...
使用ObjectDataSource和Gridview自定义分页,采用Microsoft.Practices.EnterpriseLibrary.Data4.1操作数据库
asp.net中的GridView自定义分页及排序代码,对GridView控件进行扩展,实现效果不错的自定义分页及排序代码,供大家学习参考!
找了三天才找到合适会用的gridview自定义分页功能,之前找了n多种方法,没一个能用的,直到现在这个才真正的在自己的网页上用上。现在上传上来给有需要的朋友一个方便,2分的资源分只是想借朋友的一点力积点分方便...
GridView自定义分页并集成列可拖动改变表格的列宽功能控件 一个GridView自定义分页并集成列可拖动功能控件 GridViewPageable为空间源码,Demo为演示文件夹
asp.net中的GridView自定义分页及可拖动改变列宽代码
gridview实现自定义分页
此处自定义分页是在需要时才加载当页数据。 示例中包含完整的Sql数据库访问类(考虑到了存储过程的使用),也可以适应不同的数据库,简单的修改代码即可使用。 示例逻辑层采用存储过程访问数据库,加快访问速度。...
一个GridView自定义分页并集成列可拖动功能控件 GridViewPageable为空间源码,Demo为演示文件夹
asp.net中的GridView自定义分页及改变列宽代码
商业编程-源码-GridView自定义分页及可拖动改变列宽源码.zip
实现了Gridview的自定义分页技术和可拖动列宽效果,而且已经全部封装好了。也可看源代码,非常实用。
自定义GridView分页模板.doc 自定义GridView分页模板.doc自定义GridView分页模板.doc
基于ASP.NET的自定义分页显示及可拖动改变列宽代码 支持通过Url进行分页,支持Url分页方式下的Url重写(UrlRewrite)功能,支持使用用户自定义图片做为导航元素,功能强大灵活、使用方便、可定制性强,增强的 Visual...
1. 为什么不使用GridView的默认分页功能 首先要说说为什么不用GridView的默认的分页功能,GridView控件并非真正知道如何获得一个新页面,它只是请求绑定的数据源控件返回适合规定页面的行,分页最终是由数据源控件...
这是自己做的一套摄影协会的图片的上传及浏览效果系统,其中包括批量上传图片,lightbox图片浏览效果,自己写的评论上下翻页,也在网上找了很多东西,自己也学到了很多东西!希望对大家有所帮助。