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
Relevant log output
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
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
Relevant log output