Description
Description
<ListView IsRefreshing={Binding IsLoadingData}> </ListView>
after loaded data, the app set viewmodel.IsLoadingData to false,
but the loading indicator still shown.
Explanation:
https://github.com/dotnet/maui/blob/main/src/Controls/src/Core/ListView/ListView.cs#L361C4-L361C12
- ListView set the IsRefreshing property without specify SetterSpecificity, thus SetterSpecificity.ManualValueSetter will be used.
- while for {Binding}, it will use SetterSpecificity.FromBinding, which has low priority than ManualValueSetter.
- thus ListView won't raise PropertyChanged event for IsRefreshing after changed value in viewmodel.
- finally, then Handler/Renderer won't hide the refreshing indicator.
Steps to Reproduce
No response
Link to public reproduction project repository
No response
Version with bug
9.0.50 SR5
Is this a regression from previous behavior?
Yes, this used to work in Xamarin.Forms
Last version that worked well
Unknown/Other
Affected platforms
Android, iOS, Windows, macOS, Other (Tizen, Linux, etc. not supported by Microsoft directly)
Affected platform versions
all
Did you find any workaround?
No response