GridView的分页有没有这种效果的
http://www.xxxx.com/xxx.aspx?page=1(就像连接<a href="xxx.aspx?page=1"></a>的效果)
不想要
javascript:_dopostback('fsadf')这种的
怎么做?
http://www.xxxx.com/xxx.aspx?page=1(就像连接<a href="xxx.aspx?page=1"></a>的效果)
不想要
javascript:_dopostback('fsadf')这种的
怎么做?
解决方案 »
- 怎么做好一个网吧管理系统(asp.net的)
- 我刚接触asp.net请问别人做的通讯录项目下载下来怎么在自己的机器上运行 我装的是vs2005?
- 操作系统自动更新后,利用Structured Graphics Control画出来的图在浏览器不能显示了,是什么原因呢?在线等
- Attributes.add的问题
- 在字符串中,如何删除\
- 关于邮件群发的问题!请高手指点.
- 请问有什幺办法记录用户点击了网站里的某个链接?(如点击了此链接就给此用户做个相应标记)谢谢!!!!!
- 图片二进制码问题
- =====打印table中的内容=====
- 问个配置问题,勿见笑!
- 怎样使用 IFRAME 传输数据?????
- WEB控件事件
我不想要这种得3楼的能说详细点吗
你到底要干什么?
{
//创建分页类:
PagedDataSource objPage = new PagedDataSource(); //设置数据源
objPage.DataSource = ds.Tables[0].DefaultView; //允许分页:
objPage.AllowPaging = true; //设置每页显示条数:
objPage.PageSize = 10; //定义变量用来保存当前页索引:
int curPage; //判断是否有页面跳转请求:
if (Request.QueryString["Page"] != null)
{
curPage = Convert.ToInt32(Request.QueryString["Page"]); }
else
{
curPage = 1;
} objPage.CurrentPageIndex = curPage - 1;
this.Label5.Text = "当前页:第" + curPage.ToString() + "页";
if (!objPage.IsFirstPage)
{
this.HyperLink1.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(curPage - 1);
}
if (!objPage.IsLastPage)
{
this.HyperLink2.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(curPage + 1);
} this.GridView1.DataSource = objPage;
try
{
this.GridView1.DataBind();//当在一页中只有一行,删除时会有错误,所以用try,catch
}
catch
{ }
}
///先定义一个分页的类
#region Saga.LiveChain.FlyOA.CommonTool.SetPage
using System;
using System.Data;
using System.Data.SqlClient;
using System.Data.Common;
using System.Globalization;
using System.Configuration;
using System.Collections;
using System.Diagnostics;
using System.Text;
using System.Web.UI.WebControls;
namespace Saga.LiveChain.FlyOA.CommonTool.SetPage
{
public class SetPage
{
public PagedDataSource BindGrid(DataTable dt, Label PageLabel, DropDownList SelectPageType, Label TotalPagelb, LinkButton PreButton, LinkButton NextButton, LinkButton FirstButton, LinkButton LastButton)
{
PreButton.CausesValidation = false;
NextButton.CausesValidation = false;
FirstButton.CausesValidation = false;
LastButton.CausesValidation = false; PagedDataSource ps = new PagedDataSource();
if (dt != null)
{
if (PageLabel.Text == "")
{
PageLabel.Text = "1";
} int curpage = Convert.ToInt32(PageLabel.Text);
ps.DataSource = dt.DefaultView;
ps.AllowPaging = true;
ps.PageSize = Convert.ToInt32(SelectPageType.SelectedValue);
TotalPagelb.Text = ps.PageCount.ToString(); PreButton.Enabled = true;
NextButton.Enabled = true;
ps.CurrentPageIndex = curpage - 1;
if (curpage == 1)
{
PreButton.Enabled = false;
FirstButton.Enabled = false;
}
else
{
PreButton.Enabled = true;
FirstButton.Enabled = true;
}
if (curpage == ps.PageCount)
{
NextButton.Enabled = false;
LastButton.Enabled = false;
}
else
{
NextButton.Enabled = true;
LastButton.Enabled = true;
}
} return ps;
} /// <summary>
/// pagination when Error
/// </summary>
/// <param name="dt"></param>
/// <param name="PageLabel"></param>
/// <param name="SelectPageType"></param>
/// <param name="TotalPagelb"></param>
/// <param name="PreButton"></param>
/// <param name="NextButton"></param>
/// <param name="FirstButton"></param>
/// <param name="LastButton"></param>
/// <returns></returns>
public PagedDataSource BindGridDelete(DataTable dt, Label PageLabel, DropDownList SelectPageType, Label TotalPagelb, LinkButton PreButton, LinkButton NextButton, LinkButton FirstButton, LinkButton LastButton)
{
PreButton.CausesValidation = false;
NextButton.CausesValidation = false;
FirstButton.CausesValidation = false;
LastButton.CausesValidation = false; PagedDataSource ps = new PagedDataSource();
if (dt != null)
{
int curpage = Convert.ToInt32(PageLabel.Text);
ps.DataSource = dt.DefaultView;
ps.AllowPaging = true;
ps.PageSize = Convert.ToInt32(SelectPageType.SelectedValue);
TotalPagelb.Text = ps.PageCount.ToString();
if (PageLabel.Text == "2")
{
FirstButton.Enabled = false;
PreButton.Enabled = false;
}
else
{
FirstButton.Enabled = true;
PreButton.Enabled = true;
}
NextButton.Enabled = false;
LastButton.Enabled = false; ps.CurrentPageIndex = ps.PageCount - 1;
PageLabel.Text = Convert.ToString(curpage - 1);
}
return ps;
}
}
}
#endregion
///在页面上添加一个分页行
#region PageTD
<tr>
<td id="PageTD" runat="server" valign="bottom" align="right" colspan="4">
<asp:Label ID="tplb" runat="server" Text="总页数:"></asp:Label>
<asp:Label ID="TotalPagelb" runat="server" Text=""></asp:Label>
<asp:Label ID="curLabel" runat="server" Text="当前页:"></asp:Label>
<asp:Label ID="PageLabel" runat="server"></asp:Label>
<asp:LinkButton ID="FirstButton" runat="server" OnClick="FirstButton_Click" CssClass="LinkText">|<</asp:LinkButton>
<asp:LinkButton ID="PreButton" runat="server" OnClick="PreButton_Click" CssClass="LinkText"><</asp:LinkButton>
<asp:LinkButton ID="NextButton" runat="server" OnClick="NextButton_Click" CssClass="LinkText">></asp:LinkButton>
<asp:LinkButton ID="LastButton" runat="server" OnClick="LastButton_Click" CssClass="LinkText">>|</asp:LinkButton>
每页显示
<asp:DropDownList ID="SelectPageType" runat="server" Width="40px" AutoPostBack="True" OnSelectedIndexChanged="SelectPageType_SelectedIndexChanged">
<asp:ListItem>20</asp:ListItem>
<asp:ListItem>15</asp:ListItem>
<asp:ListItem Selected="True">10</asp:ListItem>
<asp:ListItem>5</asp:ListItem>
</asp:DropDownList>
<asp:Label ID="PageSizeLabel" runat="server" Text="条/页"></asp:Label>
</td>
</tr>
#endregion
///在页面的代码上加入引用
#region using setpage
using Saga.LiveChain.FlyOA.CommonTool.SetPage;
#endregion
///绑定数据的方法变成下面的方法
#region BindGridView1()
public void BindGridView1()
{
DataTable dt = MyBFWatchHistory.Watch_WatchHistory_ViewGetAll(); SetPage Pagesize = new SetPage();
PagedDataSource ps = new PagedDataSource();
try
{
ps = Pagesize.BindGrid(dt, PageLabel, SelectPageType, TotalPagelb, PreButton, NextButton, FirstButton, LastButton);
GridView1.DataSource = ps;
GridView1.DataBind();
}
catch
{
ps = Pagesize.BindGridDelete(dt, PageLabel, SelectPageType, TotalPagelb, PreButton, NextButton, FirstButton, LastButton);
GridView1.DataSource = ps;
GridView1.DataBind();
}
}
#endregion
///修改dt的数据绑定方法dt = MyBFWatchHistory.Watch_WatchHistory_ViewGetAll();
///修改所有的绑定方法或重绑为BindGridView1()
///修改控件名称为GridView1
///在页面的代码中加入下列定义
#region page set
protected void FirstButton_Click(object sender, EventArgs e)
{
this.PageLabel.Text = "1";
BindGridView1();
}
protected void PreButton_Click(object sender, EventArgs e)
{
this.PageLabel.Text = Convert.ToString(Convert.ToUInt32(PageLabel.Text) - 1);
BindGridView1();
}
protected void NextButton_Click(object sender, EventArgs e)
{
this.PageLabel.Text = Convert.ToString(Convert.ToUInt32(PageLabel.Text) + 1);
BindGridView1();
}
protected void LastButton_Click(object sender, EventArgs e)
{
this.PageLabel.Text = TotalPagelb.Text;
BindGridView1();
}
protected void SelectPageType_SelectedIndexChanged(object sender, EventArgs e)
{
PageLabel.Text = "1";
BindGridView1();
}
#endregion