public void HighlightForText(TextEditorControl editor, string txtLookFor) { Editor = editor; _search.ClearScanRegion(); if (!_highlightGroups.ContainsKey(_editor)) { _highlightGroups[_editor] = new HighlightGroup(_editor); } HighlightGroup group = _highlightGroups[_editor]; group.ClearMarkers(); Editor.Refresh(); if (string.IsNullOrEmpty(txtLookFor)) { // Clear highlights group.ClearMarkers(); } else { _search.LookFor = txtLookFor; _search.MatchCase = false; _search.MatchWholeWordOnly = false; bool looped = false; int offset = 0, count = 0; for (; ;) { TextRange range = _search.FindNext(offset, false, out looped); if (range == null || looped) { break; } offset = range.Offset + range.Length; count++; var m = new TextMarker(range.Offset, range.Length, TextMarkerType.SolidBlock, Color.Yellow, Color.Black); group.AddMarker(m); } } }
private void btnHighlightAll_Click(object sender, EventArgs e) { if (!_highlightGroups.ContainsKey(_editor)) { _highlightGroups[_editor] = new HighlightGroup(_editor); } HighlightGroup group = _highlightGroups[_editor]; if (string.IsNullOrEmpty(LookFor)) { // Clear highlights group.ClearMarkers(); } else { _search.LookFor = txtLookFor.Text; _search.MatchCase = chkMatchCase.Checked; _search.MatchWholeWordOnly = chkMatchWholeWord.Checked; bool looped = false; int offset = 0, count = 0; for (; ;) { TextRange range = _search.FindNext(offset, false, out looped); if (range == null || looped) { break; } offset = range.Offset + range.Length; count++; var m = new TextMarker(range.Offset, range.Length, TextMarkerType.SolidBlock, Color.Yellow, Color.Black); group.AddMarker(m); } if (count == 0) { MessageBox.Show("Search text not found."); } else { Close(); } } }