代码之家  ›  专栏  ›  技术社区  ›  user225269

在VB.NET中禁用文本框时遇到问题

  •  0
  • user225269  · 技术社区  · 15 年前

    如何第二次禁用文本框? 这是我的代码,在表单加载中,文本框被禁用,除非用户将输入数据库中的ID号。但是,如果用户输入数据库中的一个ID号,然后再次输入另一个不存在的ID号, 这就是这个代码的由来,但它有问题,它不会在鼠标单击时禁用文本框,这是什么正确的方法?

    Private Sub Button12_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Button12.MouseClick
            Dim NoAcc As String
            Dim NoAccmod2 As String
            Dim NoPas As String
    
            Dim sqlcon As New MySqlConnection("Server=localhost; Database=school;Uid=root;Pwd=nitoryolai123$%^;")
            Dim sqlcom As MySqlCommand = New MySqlCommand("Select * from student where IDNO= '" & TextBox14.Text & "' ", sqlcon)
    
            sqlcon.Open()
    
            Dim rdr As MySqlDataReader
            rdr = sqlcom.ExecuteReader
    
            If rdr.HasRows Then
                rdr.Read()
                NoAcc = rdr("IDNO")
                If (TextBox14.Text <> NoAcc) Then
                    MsgBox("ID Number is not yet registered!, please register first in the general information before trying to register parents information", MsgBoxStyle.Information)
                    TextBox7.Enabled = False
                    TextBox8.Enabled = False
                    TextBox9.Enabled = False
                    TextBox10.Enabled = False
                    TextBox11.Enabled = False
                    TextBox12.Enabled = False
                    TextBox13.Enabled = False
                End If
            End If
    
    1 回复  |  直到 15 年前
        1
  •  1
  •   tobrien    15 年前

    在程序的顶部总是禁用文本框,然后在ID号匹配时启用它们…

    根据您在这里实际尝试实现的目标,如果ID匹配,也可以在鼠标单击中清除感兴趣的文本框,如果不匹配,则将其设置为焦点(允许他们查看输入的内容并进行更改…)。也许是打错了?)