Created attachment 23702 [details]
When I get the popover of properties available for the element Grid in this screenshot, noticed the ordering is by length of the property name...this continues down the list.
I'm not sure what the next sorting rule is, I can't make sense of it.
I would expect the sorting to be alphabetical if not also more context aware (most common at the top).
Created attachment 24392 [details]
Unfortunately this is expected behaviour, but you found edge case that looks very weird... IDE Code Completion once something is typed(in your case g) it kicks from alphabet sorting to "fuzzy search" closest match... In your case a lot of matches are properties of Grid and non-alphabetical sort is very visible... Look at attached example in C#, where it's also not sorted alphabetically.
Sooner or later we'll be getting the vs.net controllers for that layer then the behavior will be different.
The decision to implement it like that was because I sort it according to the match index so items upper in the list are more likely the right ones. Doesn't work in all cases but alphabetical sorting is probably wrong everytime :).
I took R# as exapmle for the sorting/filtering routines. I'm not sure if I matched it 100% but we're close.
In any case we'll be getting the vs.net controllers and the behavior will be defined by them in future releases. I do not plan to work or alter the current behavior.
@Mike the Roslyn controller changes will only apply to Roslyn languages, of which XML is not currently one. Also, that's some ways off, and this is a pretty painful UX issue
That said... @David, I think that we should also change XAML completion to only list the part before the '.' and then implement completion for the '.' as well. This would match what VS does and would likely mitigate the impact of the sort issue.
This is now fixed. We don't show <Grid.Scale, <Grid.Style... anymore, instead
we do it same as VS2017, we show just <Grid, only after user types <Grid. we