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

📄 admin_user_list.aspx.vb

📁 《ASP.NET C#程序设计案例教程》
💻 VB
字号:
Imports System
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports MicroSoft.VisualBasic
Imports System.Data
Imports nsBBS												            '因为用到了自定义业务对象,所以导入

Public Class admin_user_list: Inherits Page
	Public MyDataGrid As DataGrid
	Public txtKeyword As TextBox
	Public Enter As Button
	Public lblPageIndex,lblKeyword As Label

	Sub Page_Load(Sender As Object, E As EventArgs)
		'判断一下,如果不是管理员,就返回到首页
		If DataUserLog.IsAdmin()=False Then
			Response.Write("<script language='javascript'>top.location.href='../index.aspx';</script>")
		End If

		If Not IsPostBack Then
			Call myDataBind()										'绑定数据
		End If
	End Sub
	'该过程用于删除行,不过要注意其中会判断是最后一页,且只有一行的情况
	Sub MyDataGrid_Delete(Sender As Object, E As DataGridCommandEventArgs)
		Dim dus As New DataUsers()
		Call dus.DeleteUser(MyDataGrid.DataKeys(E.Item.ItemIndex))

		'下面先判断是否是最后一页,且只有一行的情况
		If myDataGrid.PageCount>1 And myDataGrid.CurrentPageIndex=(myDataGrid.PageCount-1) And myDataGrid.Items.Count=1 Then
			lblPageIndex.Text=(myDataGrid.CurrentPageIndex-1)			'将新页码保存在标签中
		End If
		'重新绑定数据
		Call myDataBind()
	End Sub

	'该过程用于添加删除确认框
	Sub MyDataGrid_ItemDataBound(sender As Object, e As DataGridItemEventArgs) 
		'这个判断语句表示,只有对于数据行才执行,对于标题栏和脚注栏则不执行
		If e.Item.ItemType<>ListItemType.Header And e.Item.ItemType<>ListItemType.Footer Then
			'下面找到删除按钮控件,它其实是一个LinkButton控件
			Dim lbtnDel As LinkButton					'定义一个LinkButton控件
			lbtnDel=e.Item.Cells(7).Controls(0)			'它位于第7列第0个控件
			'下面添加JavaScript事件
			lbtnDel.Attributes.Add("onclick","javascript:return confirm('您真的要删除 " & e.Item.DataItem("UserId") & " 吗?');")  
		End If
	End Sub 

	'该过程用于分页
	Sub MyDataGrid_Page(sender As Object, e As DataGridPageChangedEventArgs)
		lblPageIndex.Text=e.NewPageIndex								'将要显示的页码保存在标签中
		Call myDataBind()												'绑定数据
	End Sub

	'该过程用来查询数据
	Sub Enter_Click(Sender As Object, E As EventArgs)
		lblKeyword.Text=Trim(txtKeyword.Text)							'将查询关键词保存在标签中
		lblPageIndex.Text=0												'查询数据后,原来的页码就有问题了,此时应该显示第0页
		myDataBind()													'绑定数据							
	End Sub

	'该过程用于绑定数据
	Sub myDataBind()
		'首先读取2个重要变量,分别用来设置页码、查询和排序
		Dim intPageIndex As Integer
		Dim strKeyword As String
		intPageIndex=Convert.ToInt32(lblPageIndex.Text)
		strKeyword=lblKeyword.Text
		'下面建立DataUsers对象,返回所有人
		Dim dus As New DataUsers()
		Dim dv As DataView=dus.GetUser()
		'下面根据查找关键词设置筛选条件
		If strKeyword<>"" Then
			dv.RowFilter = "UserId='" & strKeyword & "'"		'设置筛选条件
		End If
		'下面根据页面变量设置要显示的页面
		myDataGrid.CurrentPageIndex = intPageIndex
		
		'下面绑定数据
		myDataGrid.DataSource=dv
		myDataGrid.DataBind()	
	End Sub
End Class

⌨️ 快捷键说明

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