Description
Describe the bug 🐞
As a part of our development process we run Microsoft's Accessibility Insights FastPass tool to ensure that UI changes are meeting this accessibility standard.
There is one issue that we cannot seem to resolve, and it seems to be linked to someting weird going on behind the scenes of ReactiveUI (from what I can tell).
When binding a list to a ComboBox using ReactiveUI there seems to be an issue that is being flagged by the tool around the values of the AutomationProperties.SizeOfSet
and AutomationProperties.PositionOfSet
. As of .NET48 these values should be automatically filled in in a WPF application. These values are used by a screenreader to inform the user where they are on a particular page (e.g. position 4 of 10).
Anyways when binding a list to a ComboBox using a regular WPF code behind binding (and just using instead of ) this is no longer an issue on the accessibility tool.
Step to reproduce
- Go to the reproduction and start the application
- Using Microsoft's Accessibility Insights FastPass tool run a test on the combobox.
- You will see the accessibility issue ** "The elements ControlType requires valid values for SizeOfSet and PositionOfSet"**
- Then swap to use a classic WPF code-behind approach to binding list to a combobox (Swap
<ReactiveWindow>
for<Window>
, uncomment theWpfCombobox.ItemSource = ...
code and comment out the ReactuveUI setup). - Run the FastPass tool again.
- You will see there are no accessibility issues.
Reproduction repository
https://github.com/hicks86/ReactiveUIAccessibilityRepro
Expected behavior
When you run the accessibility tool there should be no accessibility issue present for the SizeOfSet and PositionOfSet AutomationProperties.
Screenshots 🖼️
No response
IDE
Visual Studio 2022
Operating system
Windows 10
Version
No response
Device
No response
ReactiveUI Version
19.4.1
Additional information ℹ️
Happy to provide any other information needed. It would be good to get to the bottom of this.