if (!IsPostBack)
{
Search1.TableName = "chongzhiLog";
Search1.OrderType = "desc";
Search1.OrderField = "addTime";
//if (ht["GameItemAddLog_shichang"].ToString() == "1")//拥有财务权限提取市场已审核财务未审核记录
//{
Search1.SqlWhere = "Type='赠送' and flagShichang='未审核' and state='未审核'";
//}
Search1.PageSize = 10;
Search1.DataControlName = "GridView1";
}
前台代码编辑:
<div>
<asp:Label ID="Label2" runat="server" Font-Size="9pt">共</asp:Label> <span
style="font-family: 宋体"> </span>
<asp:Label ID="lbl_RecordCnt" runat="server" Font-Size="9pt"></asp:Label>
<asp:Label ID="Label3" runat="server" Font-Size="9pt">项</asp:Label><span style="font-family: Times New Roman"> </span>
<asp:Label ID="Label4" runat="server" Font-Size="9pt" ForeColor="Black">|</asp:Label>
<asp:LinkButton ID="lkbFirst" runat="server" CommandArgument="First" Enabled="False"
Font-Size="9pt" ForeColor="Black" OnCommand="ChangePage">首页</asp:LinkButton>
<asp:LinkButton ID="lkbPre" runat="server" CommandArgument="Pre" Enabled="False"
Font-Size="9pt" ForeColor="Black" OnCommand="ChangePage">上一页</asp:LinkButton>
<asp:LinkButton ID="lkbNext" runat="server" CommandArgument="Next" Enabled="False"
Font-Size="9pt" ForeColor="Black" OnCommand="ChangePage">下一页</asp:LinkButton>
<asp:LinkButton ID="lkbLast" runat="server" CommandArgument="Last" Enabled="False"
Font-Size="9pt" ForeColor="Black" OnCommand="ChangePage">末页</asp:LinkButton>
<asp:Label ID="Label5" runat="server" Font-Size="9pt" ForeColor="Black">|</asp:Label>
<asp:Label ID="Label6" runat="server" Font-Size="9pt">转到</asp:Label><asp:TextBox ID="txt_CurrentPage"
runat="server" AutoPostBack="True" Enabled="False" style="width:20px; text-align:center" CssClass="input" OnTextChanged="txt_CurrentPage_TextChanged"></asp:TextBox><asp:Label ID="Label8" runat="server" Font-Size="9pt" ForeColor="Black">/</asp:Label>
<asp:Label ID="lbl_PageCnt" runat="server" Font-Size="9pt"></asp:Label>
<asp:Label ID="Label9" runat="server" Font-Size="9pt">页</asp:Label>
</div>
后台代码:
if (!IsPostBack)
{
if (this.InitBindData)
{
//默认显示为第几页
ViewState["CurrentPage"] = ViewState["CurrentPage"] == null || ViewState["CurrentPage"].ToString() == "" ? "1" : ViewState["CurrentPage"].ToString();
//每页显示记录总数
ViewState["PageSize"] = ViewState["PageSize"] == null || ViewState["PageSize"].ToString() == "" ? 10 : int.Parse(ViewState["PageSize"].ToString());
this.BindGridData();
}
}
protected void ChangePage(object sender, System.Web.UI.WebControls.CommandEventArgs e)
{
int PageCount = this.GetPageCount();
int CurrentPage = int.Parse(ViewState["CurrentPage"].ToString());
string Change = e.CommandArgument.ToString();
if (Change == "Pre") //上一页
{
if (CurrentPage <= 1)
{
ViewState["CurrentPage"] = 1;
}
else
{
ViewState["CurrentPage"] = CurrentPage - 1;
}
}
else if (Change == "Next") //下一页
{
if (CurrentPage >= PageCount)
{
ViewState["CurrentPage"] = PageCount;
}
else
{
ViewState["CurrentPage"] = CurrentPage + 1;
}
}
else if (Change == "First") //首页
{
ViewState["CurrentPage"] = 1;
}
else //末页
{
ViewState["CurrentPage"] = PageCount;
}
//显示当前页
this.txt_CurrentPage.Text = ViewState["CurrentPage"].ToString();
this.ProData();
}
#endregion
#region 绑定数据
/// <summary>
/// 设置分页相关的参数
/// </summary>
private void BindGridData()
{
//记录总数
this.lbl_RecordCnt.Text = this.GetRecordCount().ToString();
//总页数
this.lbl_PageCnt.Text = this.GetPageCount().ToString();
if (this.lbl_PageCnt.Text != "0")
{
//当前页
this.txt_CurrentPage.Text = ViewState["CurrentPage"].ToString();
}
else
this.txt_CurrentPage.Text = "0";
//避免翻页后再查询出现列表没记录的情况/总页数小于当前页数
if (int.Parse(this.lbl_RecordCnt.Text) <= int.Parse(ViewState["PageSize"].ToString())||int.Parse(this.lbl_PageCnt.Text) < int.Parse(ViewState["CurrentPage"].ToString()))
{
ViewState["CurrentPage"] = 1;
this.txt_CurrentPage.Text = "1";
}
//绑定数据
this.ProData();
}
#endregion
#region 处理数据集
/// <summary>
/// 处理数据集
/// </summary>
/// <returns></returns>
private void ProData()
{
SqlConnection conn = new SqlConnection(strconn);
SqlCommand cmd = new SqlCommand("GetRecordFromPage", conn);
conn.Open();
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter prmTblName = new SqlParameter("@tblName", SqlDbType.VarChar, 255);
prmTblName.Value = "" + ViewState["TableName"].ToString() + "";
cmd.Parameters.Add(prmTblName);
string retcolumns = ViewState["RetColumns"] == null || ViewState["RetColumns"].ToString() == "" ? "*" : ViewState["RetColumns"].ToString();
SqlParameter prmRetColumns = new SqlParameter("@RetColumns", SqlDbType.VarChar, 1000);
prmRetColumns.Value = retcolumns;
cmd.Parameters.Add(prmRetColumns);
string sqlwhere = ViewState["SqlWhere"] == null || ViewState["SqlWhere"].ToString() == "" ? "" : ViewState["SqlWhere"].ToString();
SqlParameter prmStrWhere = new SqlParameter("@strWhere", SqlDbType.VarChar, 1000);
prmStrWhere.Value = sqlwhere;
cmd.Parameters.Add(prmStrWhere);
SqlParameter prmOrderfld = new SqlParameter("@Orderfld", SqlDbType.VarChar, 255);
prmOrderfld.Value = ViewState["OrderField"].ToString() + "";
cmd.Parameters.Add(prmOrderfld);
SqlParameter prmPageIndex = new SqlParameter("@PageIndex", SqlDbType.Int);
prmPageIndex.Value = int.Parse(ViewState["CurrentPage"].ToString());
cmd.Parameters.Add(prmPageIndex);
SqlParameter prmPageSize = new SqlParameter("@PageSize", SqlDbType.Int);
prmPageSize.Value = int.Parse(ViewState["PageSize"].ToString()) + "";
cmd.Parameters.Add(prmPageSize);
string ordertype = ViewState["OrderType"] == null || ViewState["OrderType"].ToString() == "" ? "asc" : ViewState["OrderType"].ToString();
SqlParameter prmOrderType = new SqlParameter("@OrderType", SqlDbType.VarChar, 50);
prmOrderType.Value = ordertype;
cmd.Parameters.Add(prmOrderType);
//cmd.Parameters.Add("@tblName", "" + ViewState["TableName"].ToString() + "");
//string retcolumns = ViewState["RetColumns"] == null || ViewState["RetColumns"].ToString() == "" ? "*" : ViewState["RetColumns"].ToString();
//cmd.Parameters.Add("@RetColumns", retcolumns);
//string sqlwhere = ViewState["SqlWhere"] == null || ViewState["SqlWhere"].ToString() == "" ? "" : ViewState["SqlWhere"].ToString();
//cmd.Parameters.Add("@strWhere", sqlwhere);
//cmd.Parameters.Add("@Orderfld", "" + ViewState["OrderField"].ToString() + "");
//cmd.Parameters.Add("@PageIndex", int.Parse(ViewState["CurrentPage"].ToString()));
//cmd.Parameters.Add("@PageSize", "" + int.Parse(ViewState["PageSize"].ToString()) + "");
//string ordertype = ViewState["OrderType"] == null || ViewState["OrderType"].ToString() == "" ? "asc" : ViewState["OrderType"].ToString();
//cmd.Parameters.Add("@OrderType", ordertype);
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
da.Fill(ds);
//找到父页面控件并绑定(这里只对DataGrid控件绑定)
GridView gv = (GridView)this.Page.FindControl("" + ViewState["DataControlName"].ToString() + "");
gv.DataSource = ds;
gv.DataBind();
gv.Dispose();
cmd.Dispose();
conn.Close();
//控制分页按扭状态
this.StatsLinkButton();
}