Xaml 为内容视图的旋转木马绑定当前项(保存在可观察集合中)

Xaml 为内容视图的旋转木马绑定当前项(保存在可观察集合中),xaml,xamarin.forms,binding,carousel,observablecollection,Xaml,Xamarin.forms,Binding,Carousel,Observablecollection,我是这个社区/Xamarin的新成员,我在这方面已经有一段时间了,所以我现在需要寻求帮助 我有一个ContentViews的CarouselView,其中一个视图页面需要验证,因此当字段为空时,我可以使用当前项目绑定还原正确的carousel页面,但是-尽管我正确检索了当前项目和内容视图,但UI/绑定没有更新 contentview是可观察的集合 <Label Text="{Binding Source={x:Reference carouselView}, Path=Curre

我是这个社区/Xamarin的新成员,我在这方面已经有一段时间了,所以我现在需要寻求帮助

我有一个
ContentView
s的
CarouselView
,其中一个视图页面需要验证,因此当字段为空时,我可以使用当前项目绑定还原正确的carousel页面,但是-尽管我正确检索了当前项目和内容视图,但UI/绑定没有更新

contentview
可观察的集合

<Label Text="{Binding Source={x:Reference carouselView}, Path=CurrentItem, 
       StringFormat='Current item: {0}', FallbackValue='Current item:'}"/>
    
<Label Text="{Binding Source={x:Reference carouselView}, Path=Position, 
       StringFormat='Position: {0}'}"/>

<CarouselView
        x:Name="carouselView"
        IndicatorView="indicatorView"
        ItemsSource="{Binding ContentViews}"
        CurrentItem="{Binding CurrentItem}"
        Position="{Binding Position}"
        CurrentItemChanged="OnCurrentItemChanged"
        PositionChanged="OnPositionChanged">        
        <CarouselView.ItemTemplate>
            <DataTemplate>
                <ContentView Content="{Binding .}" />                    
           </DataTemplate>
        </CarouselView.ItemTemplate>
</CarouselView>

您是否在绑定源代码中实现了
INotifyPropertyChanged


检查此项,同时检查
CarouselView
绑定源是否为所需的类。

我已在创建ObservableCollection的模型类上实现InotifyProperty更改,因此当更新CurrentItem和CurrentPosition时,它调用OnProperty changed,但是carousel视图仍然没有使用新的当前项/位置进行更新:modelclass.OnPropertyChanged(“CurrentPosition”);modelclass.OnPropertyChanged(“当前项”);您能就此提供建议吗?carousel视图的绑定上下文是什么?我希望我已经正确地理解了您,如果没有,请告诉我-Im绑定到CarouselView,这是一个包含内容视图列表的observablecollection:public observablecollection ContentView{get;set;}source=new List();source.Add(new MyView2());source.Add(new MyView3());ContentViews=new observeCollection(source.Skip(Position));如果我可以从另一个类引用旋转木马视图,我可以使用ScrollTo,但我收到错误,“旋转木马视图由于其保护级别而无法访问”:旋转木马视图。滚动到(3,位置:(ScrollToPosition)enumPicker.SelectedItem,动画:animateSwitch.IsToggled);这将是一种替代方法,但任何方法都可以!我正在使用CarouseViewDemo使用内容视图来测试这一点。请使用隐藏的视图代码更新问题,因为显示的错误意味着您可能拥有私有而不是公共