我将Xamarin.Forms版本从3.4.0.1更新到最新版本: 4.4.0.991477,但是我以前使用的CarouselView不再工作了,我得到了以下错误:
The type 'CarouselView' exists in both 'Xamarin.Forms.CarouselView,
Version=1.0.7.0, Culture=neutral, PublicKeyToken=null' and
'Xamarin.Forms.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null'我到处寻找Xamarin.Forms.CarouselView的解决方案和替代方案,但我看到的最好的是Alex的插件,CarouselView.FormsPlugin,https://github.com/alexrainman/CarouselView,但是我读过很多人抱怨这个插件中的一些bug。
我还听说过,Xamarin表单现在有了自己的新插件?https://learn.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/carouselview/,但是它非常新,没有人谈论它,没有太多的文档.
所以..。对于当前的Xamarin.Forms开发人员(4.4+),您现在使用什么来实现CarouselViews?CarouselView.FormsPlugin值得信赖吗?(我必须为一家大公司更新旧的CarouselView,所以在推出更新版本之前,我需要确保它是好的。)
编辑:卸载插件后:我的解决方法失败了:'Xamarin.Forms.CarouselView,Version=0.0.0.0,Culture=neutral,PublicKeyToken=null‘错误。
我猜是因为我有台词
xmlns:cv="clr-namespace:Xamarin.Forms;assembly=Xamarin.Forms.CarouselView"在我的xaml文件中,但是如果我取出它,那么我的代码就会使用CarouselView
<cv:CarouselView
VerticalOptions="FillAndExpand"
HorizontalOptions="FillAndExpand"
ItemsSource="{Binding ReadingList}"
Position="{Binding Position}">
<cv:CarouselView.ItemTemplate>
...扑通一声
编辑2:我认为我需要将cv:____改为其他的东西,因为它显然不再使用相同的插件了,所以我尝试将cv:从这两种插件中删除,并且它工作了。是那么回事吗?
发布于 2020-01-17 02:08:16
我认为我需要将cv:____改为其他的东西,因为它显然不再使用相同的插件了,所以我尝试将cv:从这两个插件中移除,并且运行正常。是那么回事吗?
是的,你做的是对的。
在Xamarin.forms 4.4.0.991477中,CarouselView是Namespace: Xamarin.Forms和Assembly:Xamarin.Forms.Core.dll中的一个类。
因此,您可以修改您的cv___以:
xmlns:cv="clr-namespace:Xamarin.Forms;assembly=Xamarin.Forms.Core"并把它当作:
<cv:CarouselView/>通常,没有必要使用cv,因为默认命名空间指定了在XAML文件中定义的没有前缀的元素引用Xamarin.Forms类:
xmlns="http://xamarin.com/schemas/2014/forms"因此,在您将cv:从两个项目中移除之后,您的项目就开始工作了。
https://stackoverflow.com/questions/59778154
复制相似问题