Я разрабатываю приложение Xamarin Forms, которому требуется ListView с CustomCells MyCustomCell. Ячейки имеют умеренное количество привязок (9), и каждая ячейка во многом похожа, поэтому я решил установить стратегию кэширования RecycleElement. Этот список легко может содержать 100 пунктов. Каждая ячейка содержит два изображения с источником Uri.
Я обычно привязываю атрибуты представления в моем MyCustomCell.xaml, например, с изображением:
<Image
x:Name="MyImage"
Source="{Binding ImageSource}"
.../>
Но недавно я прочитал эту статью https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/listview/performance, и мне было интересно, каковы основные различия между привязкой в моем MyCustomCell.xaml и в методе переопределения OnBindingContextChanged ' нравится:
protected override void OnBindingContextChanged()
{
base.OnBindingContextChanged();
var item = BindingContext as MyModel;
MyImage.Source = ImageSource.FromUri(item.ImageSource);
}
Я протестировал оба решения, и второе показалось мне более быстрым. Я прав ? Каковы настоящие различия между этими двумя решениями?