Vb.net 常规文本框的SelectionChanged事件?

Vb.net 常规文本框的SelectionChanged事件?,vb.net,Vb.net,我一直在做一些研究,似乎找不到任何类型的事件可供选择更改为常规文本框。谁能帮我一下吗。我不想使用RichTextBox。谢谢通过收听文本框的事件,您可以大致获得类似的行为: Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load AddHandler TextBox1.MouseUp, AddressOf TextBox1_OnMous

我一直在做一些研究,似乎找不到任何类型的事件可供选择更改为常规文本框。谁能帮我一下吗。我不想使用RichTextBox。谢谢

通过收听文本框的事件,您可以大致获得类似的行为:

Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        AddHandler TextBox1.MouseUp, AddressOf TextBox1_OnMouseUp
    End Sub

    Private Sub TextBox1_OnMouseUp(ByVal sender As Object, ByVal e As MouseEventArgs)
        Dim textBox As TextBox = DirectCast(sender, TextBox)
        Dim selectedText As String = textBox.SelectedText
        Console.WriteLine(selectedText)
    End Sub


End Class
结果:

编辑:

此外,为了在双击过程中做出正确的反应,您可以使用以下安全防护措施来保护代码,它将确保在第一次单击时不会输出误报

Dim isNullOrEmpty As Boolean = String.IsNullOrEmpty(selectedText)
If Not isNullOrEmpty Then
    Console.WriteLine(selectedText) // your code
End If

请参阅以下链接:

在文本选择已更改时发生

'Declaration
Public Event SelectionChanged As RoutedEventHandler

你使用的是表单还是WPF?我在可视化学习中使用表单请看我的答案。你的答案不是VB。你给了我一个不同于我所期待的语言的答案…抱歉,我将为你设计一个VB版本:/n该链接是针对Silverlight的。虽然询问者最初没有指定,但有一条评论指出这个问题与WinForms有关。