如何处理 Xamarin 中 CarouselView 的错误?
How to deal with an error in CarouselView in Xamarin?
我想知道如何处理 Xamarin 中 CarouselView 的错误。
我在Xaml中写了以下内容并链接到一组照片。
<CarouselView
ItemsSource="{Binding PageImages}"
CurrentItem="{Binding CurrentPage}"
Position="{Binding CurrentPosition}"
>
<CarouselView.ItemTemplate >
<DataTemplate x:DataType="model:PageImage" >
<Image Source="{Binding ImageUrl}"
Aspect="AspectFit"
HorizontalOptions="Center" />
</DataTemplate>
</CarouselView.ItemTemplate>
</CarouselView>
我正在使用 ViemModel 秒表替换幻灯片中的照片。
private void OnStopWatchTick(object sender, ElapsedEventArgs e)
{
CurrentPosition++;
}
在这种情况下,如果照片加载失败,应用程序会崩溃。
当照片加载失败时,我在代码中的 try-catch 哪里捕获错误?
Xamarin.Forms 5.0.0.2337
Xamarin.Essentials1.7.1
我建议你试试这个插件:https://github.com/luberda-molinet/FFImageLoading .
使用CachedImage而不是内置Image
,因为如果加载失败它会显示一个默认的占位符图像,所以在这种情况下它不会崩溃。
xmlns:ffimageloading="clr-namespace:FFImageLoading.Forms;assembly=FFImageLoading.Forms"
<DataTemplate x:DataType="model:PageImage" >
<ffimageloading:CachedImage
HorizontalOptions="Center"
WidthRequest="300"
HeightRequest="300"
DownsampleToViewSize="true"
Source = Source="{Binding ImageUrl}"
LoadingPlaceholder = "loading.png" >
</ffimageloading:CachedImage>
</DataTemplate>
我想知道如何处理 Xamarin 中 CarouselView 的错误。 我在Xaml中写了以下内容并链接到一组照片。
<CarouselView
ItemsSource="{Binding PageImages}"
CurrentItem="{Binding CurrentPage}"
Position="{Binding CurrentPosition}"
>
<CarouselView.ItemTemplate >
<DataTemplate x:DataType="model:PageImage" >
<Image Source="{Binding ImageUrl}"
Aspect="AspectFit"
HorizontalOptions="Center" />
</DataTemplate>
</CarouselView.ItemTemplate>
</CarouselView>
我正在使用 ViemModel 秒表替换幻灯片中的照片。
private void OnStopWatchTick(object sender, ElapsedEventArgs e)
{
CurrentPosition++;
}
在这种情况下,如果照片加载失败,应用程序会崩溃。 当照片加载失败时,我在代码中的 try-catch 哪里捕获错误?
Xamarin.Forms 5.0.0.2337 Xamarin.Essentials1.7.1
我建议你试试这个插件:https://github.com/luberda-molinet/FFImageLoading .
使用CachedImage而不是内置Image
,因为如果加载失败它会显示一个默认的占位符图像,所以在这种情况下它不会崩溃。
xmlns:ffimageloading="clr-namespace:FFImageLoading.Forms;assembly=FFImageLoading.Forms"
<DataTemplate x:DataType="model:PageImage" >
<ffimageloading:CachedImage
HorizontalOptions="Center"
WidthRequest="300"
HeightRequest="300"
DownsampleToViewSize="true"
Source = Source="{Binding ImageUrl}"
LoadingPlaceholder = "loading.png" >
</ffimageloading:CachedImage>
</DataTemplate>