Description
From @johnshardman on Wed, 18 Nov 2020 11:35:32 GMT
The AutomationProperties.NameProperty and AutomationProperties.HelpTextProperty are useful for naming controls and adding help text. Using them to expose a control's value results in accessibility guidelines being breached on target platforms, and result in a poor user experience for those using accessibility options/devices (such as Braille readers). For example, if using VoiceOver on iOS, the default behavior for a Slider is that the position of the Slider is read out as a percentage. In most situations (in my experience at least), that's not what the user wants. The user wants the value read out, not the percentage. So, if the Slider runs from 1 to 365 for days in the year, the user might want to hear 180 rather than 50%. Using AutomationProperties.NameProperty to read out the 180 has multiple drawbacks (for a start, it doesn't stop the 50% being read out first).
To solve this, it's necessary to somehow expose the value (in the case of iOS, AccessibilityValue). I suggest adding AutomationProperties.ValueProperty as a bindable property - that would be consistent with the other properties, although there are other ways of exposing it. This should be done for all controls, not just Sliders.
Copied from original issue xamarin/Xamarin.Forms#12889