* IsEditable combox box with text bindings
* Update after #18405 api review
* ComboBox tests for IsEditable
* remove unneeded error being throw when combox is editable and doesn't have text binding properties
* Changes after code review
* only do naviagtion check if combo box is editable
* Fix editable ComboBox tab navigation
* combobox code review improvements
---------
Co-authored-by: Julien Lebosquain <julien@lebosquain.net>
* Modify SelectingItemsControl to not just use unrealized items
* Fixup null deref
* Get unrealized items searched in comboboxes
* Fixup one small comparison bug
* Reset file that shouldn't have been changed
* Try again
* Revert frfr
* Revert frfrfr
* Fixup per PR feedback
* Remove documentation from internal method
* Remove unused usings
* ComboBox empty selection should not generate a TextBlock as SelectionBoxItem
Fixes: #16747
* Add test for ComboBox DisplayMemberBinding behavior without selection.
---------
Co-authored-by: Julien Lebosquain <julien@lebosquain.net>
* Updated Popup to raise the pass-through overlay dismiss event prior to possibly closing the popup when a pointer is pressed. Added the PopupFlyoutBase.OverlayDismissEventPassThrough property and updated logic in Button.
* Updated SplitButton logic to handle OverlayDismissEventPassThrough scenarios.
* Updated CalendarDatePicker logic to handle OverlayDismissEventPassThrough scenarios.
* Updated ComboBox logic to handle OverlayDismissEventPassThrough scenarios.
* Removed unncessary ComboBox.PopupClosed logic that focused the control. This was problematic when the popup was open with OverlayDismissEventPassThrough and clicking onto another control. Focus would not move to the clicked control.
* Fixed the Clicking_On_Control_PseudoClass unit test to properly recognize pseudo-class behavior change.
* Added a couple unit tests to FlyoutTests.
`ItemsControl` now works more like WPF, in that there are separate `Items` and `ItemsSource` properties. For backwards compatibility `Items` can still be set, though the setter is deprecated. `Items` needed to be changed from `IEnumerable` to `IList` though.
A lot still broken, in particular virtualization is completely removed.`ItemsPresenter` now no longer has an `Items` or `ItemTemplate` property; it detects when it's hosted in an `ItemsControl`. `IItemsPresenter` interface removed.
Instead of `ContentPresenter`. This fixes a memory leak whereby
`DropDown` wasn't correctly parenting the `Rectangle` created for
`SelectionBoxItem` when the selected item is a control. Fixes#706.