zoukankan      html  css  js  c++  java
  • DataList使用AspNetPager分页

    protected void Page_Load(object sender, EventArgs e)
        
    {
            
    if!IsPostBack )
            
    {
                
    string strSql;
                
    if( Request.QueryString.Count == 0 )
                
    {
                    strSql 
    = "select * from Product where Show=0 order by PID desc";
                    GetAspNetPagerRecordCount( strSql );
                }

                
    else if( Request.QueryString[ "PName" ] == null & Request.QueryString[ "KindID" ] != "全部" )
                
    {
                    strSql 
    = "select * from Product where KindID = " + Request.QueryString[ "KindID" ] + " and Show=0 order by PID desc";
                    GetAspNetPagerRecordCount( strSql );
                }

                
    else if( Request.QueryString[ "PName" ] != null & Request.QueryString[ "KindID" ] != "全部" )
                
    {
                    strSql 
    = "select * from Product where PName like '%" + Request.QueryString[ "PName" ].ToString() + "%' and KindID = " + Request.QueryString[ "KindID" ] + " and Show=0 order by PID desc";
                    GetAspNetPagerRecordCount( strSql );
                }

                
    else if( Request.QueryString[ "PName" ] != null & Request.QueryString[ "KindID" ] == "全部" )
                
    {
                    strSql 
    = "select * from Product where PName like '%" + Request.QueryString[ "PName" ].ToString() + "%' and Show=0 order by PID desc";
                    GetAspNetPagerRecordCount( strSql );
                }

                
    else
                
    {
                    strSql 
    = "select * from Product where Show=0 order by PID desc";
                    GetAspNetPagerRecordCount( strSql );
                }


                
    if( Session[ "UserName" ] == null || Session[ "UserPwd" ] == null )
                
    {
                    BindDataList();
                    
    foreach( DataListItem dl in DataListProduct.Items )
                    
    {
                        System.Web.UI.WebControls.Panel pan 
    = (Panel)dl.FindControl( "Panel1" );
                        pan.Visible 
    = true;

                        System.Web.UI.WebControls.Panel pan1 
    = (Panel)dl.FindControl( "Panel2" );
                        pan1.Visible 
    = false;
                    }

                }

                
    else
                
    {
                    BindDataList();
                    
    foreach( DataListItem dl in DataListProduct.Items )
                    
    {
                        System.Web.UI.WebControls.Panel pan 
    = (Panel)dl.FindControl( "Panel1" );
                        pan.Visible 
    = false;

                        System.Web.UI.WebControls.Panel pan1 
    = (Panel)dl.FindControl( "Panel2" );
                        pan1.Visible 
    = true;
                    }

                }
                
            }

        }


        
    private void GetAspNetPagerRecordCount( string strSql )
        
    {
            DataView dv 
    = DB.GetDataView( strSql );
            
    this.AspNetPager1.RecordCount = dv.Table.Rows.Count;
            
    this.AspNetPager1.PageSize = 12;
        }


        
    protected void BindDataList()
        
    {
            
    string strSql;
            
    if( Request.QueryString.Count == 0 )
            
    {
                strSql 
    = "select * from Product where Show=0 order by PID desc";
                lblMsg.Text 
    = "所有商品";
            }

            
    else if( Request.QueryString["PName"== null & Request.QueryString["KindID"]!="全部" )
            
    {
                strSql 
    = "select * from Product where KindID = " + Request.QueryString[ "KindID" ] + " and Show=0 order by PID desc";
                
    string sql = "select KindName from Kinds where KindID =" + Request.QueryString[ "KindID" ];
                
    string Msg = Convert.ToString( DB.ExecuteScalar( sql ) );
                
    this.lblMsg.Text = Msg;
            }

            
    else if( Request.QueryString["PName"!= null & Request.QueryString["KindID"]!="全部" )
            
    {
                strSql 
    = "select * from Product where PName like '%" + Request.QueryString[ "PName" ].ToString() + "%' and KindID = " + Request.QueryString[ "KindID" ] + " and Show=0 order by PID desc";
                
    this.lblMsg.Text = "搜索结果";
            }

            
    else if( Request.QueryString[ "PName" ] != null & Request.QueryString[ "KindID" ] == "全部" )
            
    {
                strSql 
    = "select * from Product where PName like '%" + Request.QueryString[ "PName" ].ToString() + "%' and Show=0 order by PID desc";
                
    this.lblMsg.Text = "搜索结果";
            }
           
            
    else
            
    {
                strSql 
    = "select * from Product where Show=0 order by PID desc";
                lblMsg.Text 
    = "所有商品";
            }
           

            DataListProduct.DataSource 
    = DB.GetDataSetByAspNetPager( strSql, AspNetPager1 );
            DataListProduct.DataBind(); 
        }

     
    protected void AspNetPager1_PageChanging( object src, Wuqi.Webdiyer.PageChangingEventArgs e )
        
    {
            
    this.AspNetPager1.CurrentPageIndex = e.NewPageIndex;
            
    if( Session[ "UserName" ] == null || Session[ "UserPwd" ] == null )
            
    {
                BindDataList();
                
    foreach( DataListItem dl in DataListProduct.Items )
                
    {
                    System.Web.UI.WebControls.Panel pan 
    = (Panel)dl.FindControl( "Panel1" );
                    pan.Visible 
    = true;

                    System.Web.UI.WebControls.Panel pan1 
    = (Panel)dl.FindControl( "Panel2" );
                    pan1.Visible 
    = false;
                }

            }

            
    else
            
    {
                BindDataList();
                
    foreach( DataListItem dl in DataListProduct.Items )
                
    {
                    System.Web.UI.WebControls.Panel pan 
    = (Panel)dl.FindControl( "Panel1" );
                    pan.Visible 
    = false;

                    System.Web.UI.WebControls.Panel pan1 
    = (Panel)dl.FindControl( "Panel2" );
                    pan1.Visible 
    = true;
                }

            }

        }

    DB类
    using Wuqi.Webdiyer;

    public static DataSet GetDataSetByAspNetPager( string strSql, AspNetPager AspNetPager )
        
    {
            
    try
            
    {
                OleDbConnection con 
    = CreateCon();
                OleDbDataAdapter sda 
    = new OleDbDataAdapter( strSql, con );
                DataSet ds 
    = new DataSet();
                sda.Fill( ds, AspNetPager.PageSize 
    * ( AspNetPager.CurrentPageIndex - 1 ), AspNetPager.PageSize, "table" );
                con.Close();
                con.Dispose();
                
    return ds;
            }

            
    catch( Exception )
            
    {
                
    throw;
            }

        }
  • 相关阅读:
    关系数据模型和对象数据模型之间的对应关系
    object中的方法
    重写与重载
    java中的多态总结
    int是java.lang包中可用的类的名称
    abstract关键字的说法
    7迭代器
    6python *args **kwargs
    1特征工程
    1html
  • 原文地址:https://www.cnblogs.com/Magicam/p/1233156.html
Copyright © 2011-2022 走看看