void _editor_TextChanged(object sender, EventArgs e) { if (_highlightedWord != null) { if (_marker.MarkCount > 0) { _marker.ClearMarks(); } highlightWord(_highlightedWord); } }
private void OnCaretOnPositionChanged(object x, EventArgs y) { _marker.ClearMarks(); int offset = _editor.CaretOffset; if (offset >= 0 && offset < _editor.Text.Length) { char c = _editor.Text[offset]; if (_supportedBrackets.Contains(c)) { try { int matching = findMatchingBrackets(_editor.Text, c, offset); if (matching >= 0) { _marker.AddOffsetToMark(new MarkBackgroundRenderer.Mark { Offset = offset, Length = 1, Brush = CYAN }); _marker.AddOffsetToMark(new MarkBackgroundRenderer.Mark { Offset = matching, Length = 1, Brush = CYAN }); } } catch (Exception e) { Debug.Fail(e.Message); } } } }
private void close() { Visibility = Visibility.Collapsed; _marker.ClearMarks(); _editor.Focus(); }