Skip to content

Autocomplete feature moves cursor to the end and erases last char of the text #257

Open
@DCxDemo

Description

@DCxDemo

I guess the control isn't actively maintained anymore, but in case someone will face this same issue in the future:

  1. it isn't possible to drag drop the autocomplete component in VS2022, throws a "no required constructor found" exception, so we have to resort to manual creation, which is not hard though. I tested both NuGet and source directly.

  2. autocomplete sample seems to be outdated, sample suggests autocomplete.SetAutocompleteItems(items); while it should be autocomplete.Items.SetAutocompleteItems(items); now
    https://www.codeproject.com/Articles/365974/Autocomplete-Menu

  3. and the actual bug why I am opening this:
    when the autocomplete value is inserted, the very last char of the document gets erased.

from what it looks, it kinda feels like this code shouldn't even be there, once commented you get the expected "cursor stays at the end of inserted text" behavior.

it happens in this call:

item.OnSelected(Menu, args2);

item.OnSelected(Menu, args2);

particularly here:

            //move caret position right and find char ^
            while (e.Tb.Selection.CharBeforeStart != '^')
                if (!e.Tb.Selection.GoRightThroughFolded())
                    break;

public override void OnSelected(AutocompleteMenu popupMenu, SelectedEventArgs e)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions