protected override void CaretOffsetChanged(object sender, EventArgs e) { int offset = control.ActiveTextAreaControl.Caret.Offset; if (offset < startOffset || offset > endOffset) { Close(); } else { codeCompletionListView.SelectItemWithStart(control.Document.GetText(startOffset, offset - startOffset)); } }
void DocumentDocumentChanged(object sender, DocumentEventArgs e) { Debug.WriteLine("StartOffset (document changed): {0}.", startOffset); var offset = control.ActiveTextAreaControl.Caret.Offset + 1; if (offset == startOffset) { if (CloseWhenCaretAtBeginning) { Close(); } return; } if (offset < startOffset) { Close(); } else { var text = control.Document.GetText(startOffset, Math.Min(control.Document.TextLength - startOffset, offset - startOffset)).ToUpper(); Debug.WriteLine("Searching text: " + text); codeCompletionListView.SelectItemWithStart(text); } }