vb.net中的文本框点击事件

时间:2011-03-10 18:35:07

标签: vb.net webforms textbox click event-handling

我正在尝试为文本框编写一个onclick事件,但VB.net似乎不支持textbox1.click()

我想在每次有人点击文本框时打开一个新表单。 打开一个新表单没问题,但我无法检测到点击。 文本框是否有任何检测到点击事件的事件?
我看到像TextboxBase这样的东西有Click但我能很好地使用它。

请帮忙!

这是我班级的看法:
部分公共类TextBoxClick     继承System.Web.UI.Page

结束班

它有一些基本的加载和init事件。

我想写一个像这样的Sub:
Private Sub incident_clicked(ByVal sender As Object,ByVal e As System.EventArgs)处理Incident.OnClick

Incident.Click也不起作用。

我猜我需要导入一些类来访问Click事件,但我不确定是哪一个。

谢谢是提前

7 个答案:

答案 0 :(得分:1)

您可以使用onFocus事件:)

答案 1 :(得分:1)

TextBox有一个Click事件,使用它没问题。但是,您的Handles子句使用 OnClick ,这不是有效的事件名称。确保此Sub位于Form类中,而不是模块。

Public Class Form1
    Private Sub TextBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.Click
        MessageBox.Show("Click!")
    End Sub
End Class

答案 2 :(得分:0)

根据MSDN,您的代码应该如下工作:

Private Sub TextBox1_Click(ByVal sender As Object, _
                           ByVal e As System.EventArgs) _
                           Handles TextBox1.Click

    ' Code to handle the event here

End Sub

但是,您也可以尝试使用MouseUp事件:

Private Sub textbox1_MouseUp(sender As Object, _
                             e As System.Windows.Forms.MouseEventArgs) _
                             Handles textbox1.MouseUp
    ' Code to handle the event here
End Sub

答案 3 :(得分:0)

' Will fire if textbox gets focused
Private Sub incident_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles incident.GotFocus
    Debug.Print("inciden got focus")
End Sub

' Will fire if textbox gets mouse clicked
Private Sub incident_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles incident.MouseClick
    Debug.Print("inciden got clicked")
End Sub

答案 4 :(得分:0)

对于遇到此问题的人,我通过切换到asp控件来修复它。我的按钮现在看起来像这样:

Product

不确定原因,但我现在有一个有效的点击事件。

答案 5 :(得分:0)

对我来说,只有当我在该框中键入一个字符时,才会触发Textbox_ click事件。

答案 6 :(得分:-1)

仅当您在文本框中键入字符时,才会触发文本框单击事件。 真恶心您可能想尝试使用鼠标输入鼠标离开事件,它们更加可靠。巴布五世(Babu V Bassa)。