📄 admin_user_list.aspx.vb
字号:
'因为用到了自定义业务对象,所以导入
Public Class admin_user_list
Inherits System.Web.UI.Page
#Region " Web 窗体设计器生成的代码 "
'该调用是 Web 窗体设计器所必需的。
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
End Sub
Protected WithEvents txtKeyword As System.Web.UI.WebControls.TextBox
Protected WithEvents Enter As System.Web.UI.WebControls.Button
Protected WithEvents myDataGrid As System.Web.UI.WebControls.DataGrid
Protected WithEvents lblPageIndex As System.Web.UI.WebControls.Label
Protected WithEvents lblKeyword As System.Web.UI.WebControls.Label
'注意: 以下占位符声明是 Web 窗体设计器所必需的。
'不要删除或移动它。
Private designerPlaceholderDeclaration As System.Object
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
'不要使用代码编辑器修改它。
InitializeComponent()
End Sub
#End Region
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
'判断一下,如果不是管理员,就返回到首页
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 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
'该过程用来查询数据
Private Sub Enter_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Enter.Click
lblKeyword.Text = Trim(txtKeyword.Text) '将查询关键词保存在标签中
lblPageIndex.Text = 0 '查询数据后,原来的页码就有问题了,此时应该显示第0页
myDataBind() '绑定数据
End Sub
'该过程用于分页
Private Sub myDataGrid_PageIndexChanged(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridPageChangedEventArgs) Handles myDataGrid.PageIndexChanged
lblPageIndex.Text = e.NewPageIndex '将要显示的页码保存在标签中
Call myDataBind() '绑定数据
End Sub
'该过程用于添加删除确认框
Private Sub myDataGrid_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles myDataGrid.ItemDataBound
'这个判断语句表示,只有对于数据行才执行,对于标题栏和脚注栏则不执行
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
'该过程用于删除行,不过要注意其中会判断是最后一页,且只有一行的情况
Private Sub myDataGrid_DeleteCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles myDataGrid.DeleteCommand
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
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -