⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 searchbook.aspx.cs

📁 在线图书馆
💻 CS
字号:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class WebPages_SearchBook : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            BindToDDLBookKind();
            showSearch("search");
        }
    }
    private int search = 0;
    private void BindToDDLBookKind()
    {
        DataSet ds = new DataSet();
        InfoOperate dp = new InfoOperate();
        string sRet = dp.getInfoList("BookKind", "BKID", ref ds, "kind", "");
        if (sRet == "")
        {
            int count = ds.Tables["kind"].Rows.Count;
            ArrayList list = new ArrayList();
            list.Add("全部");
            for (int i = 0; i < count; i++)
            {
                list.Add(ds.Tables["kind"].Rows[i]["BKName"].ToString());
            }
            DDLBookKind.DataSource = list;
            DDLBookKind.DataBind();
        }
    }

    private void BindToDLBookList()
    {
        int PageSize = 15;
        string dsName = "book";
        DataSet ds = new DataSet();
        getResult(ref ds);
        if (ds.Tables[dsName].Rows.Count <= 0)
        {
            return;
        }
        if (PageSize != 0)
        {
            //分页
            PanelPages.Visible = true;
            LBFinalPage.Visible = true;
            LBFirstPage.Visible = true;
            LBPrePage.Visible = true;
            LBNextPage.Visible = true;
            LabelTotalPage.Visible = true;
            LabelPageNo.Visible = true;
            Label1.Visible = true;
            Label2.Visible = true;
            Label3.Visible = true;
            Label4.Visible = true;


            PagedDataSource ps = new PagedDataSource();
            int PageNo = Convert.ToInt32(LabelPageNo.Text.ToString());

            ps.DataSource = ds.Tables[dsName].DefaultView;
            ps.AllowPaging = true;
            ps.PageSize = PageSize;
            ps.CurrentPageIndex = PageNo - 1;

            LBFinalPage.Enabled = true;
            LBFirstPage.Enabled = true;
            LBNextPage.Enabled = true;
            LBPrePage.Enabled = true;

            if (ps.IsFirstPage)
            {
                //判断是否为首页
                LBFirstPage.Enabled = false;
                LBPrePage.Enabled = false;
                if (ps.PageCount == 1)
                {
                    LBFinalPage.Enabled = false;
                    LBNextPage.Enabled = false;
                }
            }
            if (ps.IsLastPage)
            {
                //判断是否为末页
                LBFinalPage.Enabled = false;
                LBNextPage.Enabled = false;
            }

            DLBookList.DataSource = ps;

            DLBookList.DataKeyField = "BLID";
            DLBookList.DataBind();

            LabelTotalPage.Text = ps.PageCount.ToString();
        }
        else
        {
            //不分页
            PanelPages.Visible = false;
            LBFinalPage.Visible = false;
            LBFirstPage.Visible = false;
            LBPrePage.Visible = false;
            LBNextPage.Visible = false;
            LabelTotalPage.Visible = false;
            LabelPageNo.Visible = false;
            Label1.Visible = false;
            Label2.Visible = false;
            Label3.Visible = false;
            Label4.Visible = false;

            DLBookList.DataSource = ds.Tables[dsName].DefaultView;
            DLBookList.DataKeyField = "BLID";
            DLBookList.DataBind();
        }
    }

    protected void LBFirstPage_Click(object sender, EventArgs e)
    {
        //显示首页
        LabelPageNo.Text = "1";
        BindToDLBookList();
    }
    protected void LBPrePage_Click(object sender, EventArgs e)
    {
        //显示上一页
        LabelPageNo.Text = Convert.ToString(Convert.ToInt32(LabelPageNo.Text.ToString()) - 1);
        BindToDLBookList();
    }
    protected void LBNextPage_Click(object sender, EventArgs e)
    {
        //显示下一页
        LabelPageNo.Text = Convert.ToString(Convert.ToInt32(LabelPageNo.Text.ToString()) + 1);
        BindToDLBookList();
    }
    protected void LBFinalPage_Click(object sender, EventArgs e)
    {
        //显示末页
        LabelPageNo.Text = LabelTotalPage.Text;
        BindToDLBookList();
    }
    protected void BtnSearch_ServerClick(object sender, EventArgs e)
    {
        search = 0;
        BindToDLBookList();
    }

    private void showSearch(string mode)
    {
        switch (mode)
        {
            case "result":
                PanelResult.Visible = true;
                PanelSearch.Visible = false;
                break;
            case "search":
                PanelSearch.Visible = true;
                PanelResult.Visible = false;
                break;
            default: break;
        }
    }
    protected void Button1_ServerClick(object sender, EventArgs e)
    {
        search = 1;
        BindToDLBookList();
    }

    private void getResult(ref DataSet ds)
    {
        if (search  == 0)
        {
            InfoOperate dp = new InfoOperate();
            string bookName = LxEnCode.EnCode(TBBookName.Value.ToString());
            string sRet = dp.getBookList(ref ds, "book", 0, "order", "", "BLName", bookName);
            if (sRet == "")
            {
                showSearch("result");
            }
            else
            {
                showSearch("search");
            }
        }
        else if (search == 1)
        {
            InfoOperate dp = new InfoOperate();
            string text = LxEnCode.EnCode(TBKeyText.Value.ToString());
            string keyName = SelectSearchKind.Value.ToString();
            string kind = DDLBookKind.SelectedItem.Text.ToString();
            if (kind == "全部") 
            {
                kind = "";
            }
            switch (keyName)
            {
                case "title": keyName = "BLName"; break;
                case "author": keyName = "BLAuthor"; break;
                case "publisher": keyName = "BLPub"; break;
                case "callno": keyName = "BLNo"; break;
                default: keyName = "BLName"; break;
            }
            string sRet = dp.getBookList(ref ds, "book", 0, "order", kind, keyName, text);
            if (sRet == "")
            {
                showSearch("result");
            }
            else
            {
                showSearch("search");
            }
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -