Ich habe das ganze nun nochmal gemacht, gleich so, wie du es vor hast. Das funktioniert soweit bei mir. Hier das Control:Public Class RichTextBoxEx
Inherits System.Windows.Forms.RichTextBox
Private pSearchIndex As Integer
Public Property SearchIndex() As Integer
Get
Return pSearchIndex
End Get
Set(ByVal value As Integer)
pSearchIndex = value
End Set
End Property
Public Function SearchString(ByVal Search As String, ByVal SearchOptions As _
Windows.Forms.RichTextBoxFinds) As Boolean
Dim i As Integer
Try
If (SearchOptions And Windows.Forms.RichTextBoxFinds.Reverse) = _
Windows.Forms.RichTextBoxFinds.Reverse Then
i = Me.Find(Search, 0, Me.SearchIndex, SearchOptions)
Else
i = Me.Find(Search, Me.SearchIndex, SearchOptions)
End If
Catch ex As Exception
End Try
Me.Focus()
If i < 0 Then
Return False
Else
Me.SearchIndex = i + 1
Return True
End If
End Function
Public Sub MarkString(ByVal text As String, ByVal color As Color, ByVal _
SearchOptions As Windows.Forms.RichTextBoxFinds)
Do Until SearchString(text, SearchOptions) = False
If Me.SelectedText.Length > 0 Then
Me.SelectionColor = color
End If
Loop
SearchIndex = 0
End Sub
Private Sub Editor_SelectionChanged(ByVal sender As System.Object, ByVal e _
As System.EventArgs) Handles MyBase.SelectionChanged
SearchIndex = Me.SelectionStart
End Sub
End Class Und das habe ich in der Form stehen:Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles Button1.Click
RichTextBoxEx1.MarkString(TextBox1.Text, Color.Red, _
RichTextBoxFinds.MatchCase)
RichTextBoxEx1.SelectionStart = 0
RichTextBoxEx1.SelectionLength = 0
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles Button2.Click
RichTextBoxEx1.MarkString(TextBox2.Text, Color.Green, _
RichTextBoxFinds.MatchCase)
RichTextBoxEx1.SelectionStart = 0
RichTextBoxEx1.SelectionLength = 0
End Sub
End Class Vielleicht liegt es bei die an den RichTextBoxFinds. Du könntest das eventuell auf "None" stellen.
Beitrag wurde zuletzt am 28.08.09 um 21:38:05 editiert. |