個性化查詢(具有分類模糊查詢、換頁等功能)
2024-07-21 02:17:01
供稿:網友
 
下面是一個以查詢為主的代碼頁,用的是datagrid,查詢中我使用了一個dropdownlist,用來判斷是根據學號查詢,還是根據用戶名查詢,至于查詢的范圍,你可以任意加的,至于顯示共有多少頁及當前頁面的代碼,我前面已經發過了:)
     這里用到了一個隱藏域,目的是避免當前頁的索引值小于0。
代碼如下:
     sub pagechange(byval sender as object, byval e as datagridpagechangedeventargs)
'//////////////bata2中必須寫的,否則將不能換頁!
        datagrid1.currentpageindex = e.newpageindex
        bindgrid()
    end sub
    public sub bindgrid()
        select case dropdownlist1.selectedindex
            case 0
'//////////////在下面的sql語句里你可以增加查詢字段
                dim sql as string = "select * from stu_base where stu_id like '%" & keyword.text & "%'"
                dim comm as sqldataadapter = new sqldataadapter(sql, conn)
                dim ds as dataset
                ds = new dataset()
                comm.fill(ds, "stu_base")
                if ds.tables("stu_base") is "" then
                    datagrid1.visible = false
                else
                    datagrid1.datasource = ds.tables("stu_base").defaultview
                    if ds.tables("stu_base").rows.count = 0 then  '//////////////判斷數據庫是否為空
                        datagrid1.visible = false
                        label6.visible = true
                    else
                        label6.visible = false
                        datagrid1.visible = true
                        datagrid1.databind()
                    end if
                end if
                
            case 1
                dim sql as string = "select * from stu_base where name like '%" & keyword.text & "%'"
                dim comm as sqldataadapter = new sqldataadapter(sql, conn)
                dim ds as dataset
                ds = new dataset()
                comm.fill(ds, "stu_base")
                datagrid1.datasource = ds.tables("stu_base").defaultview
                datagrid1.databind()
        end select
    end sub
    private sub querry1_click(byval sender as system.object, byval e as system.eventargs) handles querry1.click
 '//////////////隱藏域,用來轉換數據
        keyword.text = querry.text
        datagrid1.currentpageindex = 0
        bindgrid()
    end sub