📄 defaultvb.aspx.vb
字号:
Imports System
Imports System.Collections
Imports System.ComponentModel
Imports System.Data
Imports System.Drawing
Imports System.Web
Imports System.Web.SessionState
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.HtmlControls
Imports Telerik.QuickStart
Imports Telerik.WebControls
Namespace Telerik.CallbackExamplesVB.Demos.Accounts
'/ <summary>
'/ Summary description for _Default.
'/ </summary>
Public Class DefaultVB
Inherits XhtmlPage
Protected StatusLabel As System.Web.UI.WebControls.Label
Protected txtBoxName As System.Web.UI.WebControls.TextBox
Protected txtBoxPassword As System.Web.UI.WebControls.TextBox
Protected Label2 As System.Web.UI.WebControls.Label
Protected Label1 As System.Web.UI.WebControls.Label
Protected Label3 As System.Web.UI.WebControls.Label
Protected WithEvents btnDelete As Telerik.WebControls.CallbackButton
Protected WithEvents btnRegister As Telerik.WebControls.CallbackButton
Protected WithEvents btnCheckAccount As Telerik.WebControls.CallbackButton
Protected WithEvents CallbackTextBox1 As Telerik.WebControls.CallbackTextBox
Protected lblResult As System.Web.UI.WebControls.Label
Protected Label4 As System.Web.UI.WebControls.Label
Protected WithEvents label11 As System.Web.UI.WebControls.Label
Protected WithEvents Label5 As System.Web.UI.WebControls.Label
Protected WithEvents LoadingPanel1 As Telerik.WebControls.LoadingPanel
Protected WithEvents Img1 As System.Web.UI.HtmlControls.HtmlImage
Protected DataGrid1 As System.Web.UI.WebControls.DataGrid
Enum AccountStatus
AccountExists
NameExists
NotExist
End Enum 'AccountStatus
Private Function GetRandomDate(ByVal r As Random) As DateTime
Dim dt As New DateTime(2005, r.Next(1, 5), r.Next(1, 28), r.Next(0, 23), r.Next(0, 59), r.Next(0, 59))
Return dt
End Function 'GetRandomDate
Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Not Page.IsPostBack Then
dataTable = New dataTable()
dataTable.Columns.Add("Name", GetType(String))
dataTable.Columns.Add("Password", GetType(String))
dataTable.Columns.Add("Date", GetType(DateTime))
Dim r As New Random()
dataTable.Rows.Add(New Object() {"JamesS", "pass1", GetRandomDate(r)})
dataTable.Rows.Add(New Object() {"JohnsonT", "pass2", GetRandomDate(r)})
dataTable.Rows.Add(New Object() {"Robert", "pass3", GetRandomDate(r)})
dataTable.Rows.Add(New Object() {"Michael78", "pass4", GetRandomDate(r)})
dataTable.Rows.Add(New Object() {"Will123", "pass5", GetRandomDate(r)})
dataTable.Rows.Add(New Object() {"Richard", "pass6", GetRandomDate(r)})
DataGrid1.DataSource = dataTable
DataGrid1.DataBind()
End If
End Sub 'Page_Load
#Region "Web Form Designer generated code"
Protected Overrides Sub OnInit(ByVal e As EventArgs)
'
' CODEGEN: This call is required by the ASP.NET Web Form Designer.
'
InitializeComponent()
MyBase.OnInit(e)
End Sub 'OnInit
'/ <summary>
'/ Required method for Designer support - do not modify
'/ the contents of this method with the code editor.
'/ </summary>
Private Sub InitializeComponent()
End Sub 'InitializeComponent
#End Region
Private Sub btnRegister_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnRegister.Click
If txtBoxName.Text Is Nothing OrElse txtBoxName.Text.Length < 3 Then
StatusLabel.Text = "User name should be at least 3 characters."
Return
ElseIf txtBoxPassword.Text Is Nothing OrElse txtBoxPassword.Text.Length < 4 Then
StatusLabel.Text = "Password should be at least 4 characters."
Return
Else
Dim status As AccountStatus = CheckAccount(txtBoxName.Text, txtBoxPassword.Text)
If AccountStatus.NotExist = status Then
AddAcount(txtBoxName.Text, txtBoxPassword.Text)
BindGrid()
txtBoxName.Text = String.Empty
txtBoxPassword.Text = String.Empty
btnRegister.ResponseScript += String.Format("document.getElementById('{0}').value = '';", txtBoxPassword.ClientID)
btnRegister.ResponseScript += String.Format("document.getElementById('{0}').value = '';", txtBoxName.ClientID)
StatusLabel.Text = "Account successfully registered."
Else
StatusLabel.Text = "Name is already in use, please choose another username."
End If
End If
End Sub 'btnRegister_Click
Private Sub btnCheckAccount_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnCheckAccount.Click
Dim status As AccountStatus = CheckAccount(txtBoxName.Text, txtBoxPassword.Text)
If AccountStatus.AccountExists = status Then
StatusLabel.Text = "You have successfully logged in."
txtBoxName.Text = String.Empty
txtBoxPassword.Text = String.Empty
btnCheckAccount.ResponseScript += String.Format("document.getElementById('{0}').value = '';", txtBoxPassword.ClientID)
btnCheckAccount.ResponseScript += String.Format("document.getElementById('{0}').value = '';", txtBoxName.ClientID)
Else
StatusLabel.Text = "Wrong user name or password."
End If
End Sub 'btnCheckAccount_Click
Private Sub CallbackButton4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnDelete.Click
Dim removeIndexes As New ArrayList()
Dim item As DataGridItem
For Each item In DataGrid1.Items
Dim checkBox As checkBox = CType(item.FindControl("CheckBox1"), checkBox)
If Not (checkBox Is Nothing) Then
If checkBox.Checked Then
removeIndexes.Add(item.ItemIndex)
End If
End If
Next item
Dim i As Integer
For i = removeIndexes.Count - 1 To 0 Step -1
dataTable.Rows.Remove(dataTable.Rows(CInt(removeIndexes(i))))
Next i
BindGrid()
End Sub 'CallbackButton4_Click
Private Property dataTable() As dataTable
Get
Return CType(ViewState("table"), dataTable)
End Get
Set(ByVal Value As dataTable)
ViewState("table") = Value
End Set
End Property
Private Sub AddAcount(ByVal userName As String, ByVal userPassword As String)
dataTable.Rows.Add(New Object() {userName, userPassword, DateTime.Now})
End Sub 'AddAcount
Private Function CheckAccount(ByVal userName As String, ByVal userPassword As String) As AccountStatus
Dim table As dataTable = dataTable
Dim status As AccountStatus = AccountStatus.NotExist
Dim row As DataRow
For Each row In table.Rows
Dim tableName As String = CStr(row(0))
Dim tablePassword As String = CStr(row(1))
If userName.Equals(tableName) Then
If userPassword.Equals(tablePassword) Then
status = AccountStatus.AccountExists
Else
status = AccountStatus.NameExists
End If
Exit For
End If
Next row
Return status
End Function 'CheckAccount
Private Sub BindGrid()
DataGrid1.DataSource = dataTable
DataGrid1.DataBind()
End Sub 'BindGrid
Private Sub CallbackTextBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CallbackTextBox1.TextChanged
Try
Dim charCount As Integer = Integer.Parse(CallbackTextBox1.Text)
If charCount >= 6 AndAlso charCount <= 15 Then
Dim r As New Random()
Dim s As String = "0123456789abcdefjhijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
Dim res As String = String.Empty
Dim i As Integer
For i = 0 To charCount - 1
res = res + s.Chars(r.Next(0, s.Length))
Next i
lblResult.Text = res
lblResult.ForeColor = Color.Black
Else
lblResult.Text = "Range between 6 - 15"
lblResult.ForeColor = Color.Red
End If
Catch
lblResult.Text = "Invalid number"
lblResult.ForeColor = Color.Red
End Try
End Sub 'CallbackTextBox1_TextChanged
End Class 'DefaultVB
End Namespace 'Telerik.CallbackExamplesVB.Demos.Accounts
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -