0
Public Sub textcolorchanged()
    Dim searchword As String = RichTextBox2.Text.ToString.Trim

    Dim index1 As Integer = 0

    While index1 <> -1
      If (index1 < ORGFILETXT.Text.Length) Then
        index1 = ORGFILETXT.Find(searchword, index1, RichTextBoxFinds.None)
        'If (index1 <= ORGFILETXT.TextLength) Then
            If index1 <> -1 Then
                ORGFILETXT.SelectionStart = index1
                ORGFILETXT.SelectionLength = searchword.Length
                ORGFILETXT.SelectionColor = Color.Red
                index1 = index1 + searchword.Length
            End If
        'End If

      Else
          index1 = -1
      End if
    End While
End Sub

我搜索了 datagridview1 行的单词并在富文本框中突出显示了搜索词。文本(它有全部文本)我在 datagridview1 鼠标单击和上键和下键事件中调用了这个方法

当我单击鼠标并在 datagridview1 行搜索词上向上和向下键时,单词在富文本框中突出显示。请帮助我

4

1 回答 1

1

阅读文档RichTextBox.Find Method (String, Int32, RichTextBoxFinds)我怀疑,如果找不到字符串,则返回值为负数,但不是-1。
如果是这种情况,那么您的代码可能无法设置选择颜色。

您可以尝试更改此行

If index1 <> -1 Then 

If index1 >= 0 Then 

另请参阅他们在 MSDN 中的示例

于 2012-06-22T13:38:31.453 回答