Vb.net Visual Basic水印密码字符?

Vb.net Visual Basic水印密码字符?,vb.net,login,watermark,Vb.net,Login,Watermark,我目前正在制作一个登录表单到我的程序中,在那里我有两个文本框电子邮件和密码的水印 当文本框为空时,其水印文本将显示在其中,如“用户名”和“密码”。 我的代码是: 公共类frmLogin Private Sub TextBox2_LostFocus(sender As Object, e As System.EventArgs) If TextBox2.Text = "" Then TextBox2.ForeColor = Color.DarkGray Te

我目前正在制作一个登录表单到我的程序中,在那里我有两个文本框电子邮件和密码的水印

当文本框为空时,其水印文本将显示在其中,如“用户名”和“密码”。 我的代码是: 公共类frmLogin

Private Sub TextBox2_LostFocus(sender As Object, e As System.EventArgs)
    If TextBox2.Text = "" Then
        TextBox2.ForeColor = Color.DarkGray
        TextBox2.Text = "Username"
    End If

End Sub

Private Sub TextBox2_GotFocus(sender As Object, e As System.EventArgs) Handles TextBox2.GotFocus
    TextBox2.Text = ""
    TextBox2.ForeColor = Color.Black
End Sub

Private Sub TextBox1_GotFocus(sender As Object, e As System.EventArgs) Handles TextBox1.GotFocus
    If TextBox2.Text = "" Then
        TextBox2.ForeColor = Color.DarkGray
        TextBox2.Text = "Username"
    End If
    TextBox1.Text = ""
    TextBox1.ForeColor = Color.Black
End Sub

Private Sub TextBox1_LostFocus(sender As Object, e As System.EventArgs) Handles TextBox1.LostFocus
    If TextBox1.Text = "" Then
        TextBox1.ForeColor = Color.DarkGray
        TextBox1.Text = "Password"
    End If
End Sub
末级

但现在我的问题是,我想使用密码字符作为密码。但我仍然希望水印文本是普通文本。当我选择使用密码字符时,它会将水印变成“**”而不是“password”。我如何解决这个问题?

这似乎很好:

Private Sub TextBox1_GotFocus(sender As Object, e As System.EventArgs) Handles  TextBox1.GotFocus
         Textbox1.PasswordChar = "*"
         Textbox1.Clear()
End Sub


Private Sub TextBox1_LostFocus(sender As Object, e As System.EventArgs) Handles TextBox1.LostFocus
         TextBox1.PasswordChar = ControlChars.NullChar
End Sub

您正在重新创建控制盘-它内置于windows中,独立于文本属性工作。否则,请在Enter和Leave上设置PasswordChar