至少对我来说,最好的事情之一是,在使用Caliburn.Micro进行WPF时,它会根据使用的视图模型自动选择正确的视图。
因此,例如,如果我有一个包含CarViewModel
对象的列表,它将自动创建一个数据模板,使用CarView
来渲染列表中的每个项目。
既然我们在Xamarin.Forms
中没有"x:Name"
概念,这是否意味着Caliburn在Xamarin.Forms
中不存在此功能?
我在这里询问,因为目前几乎没有Caliburn.Micro
+Xamarin.Forms的文档。
谢谢!
我将回答我自己的问题:)Caliburn 3.0发布中提到了这一点,您所做的只是:
<ListView ItemsSource="{Binding Features}" HasUnevenRows="True">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<ContentView cm:View.Model="{Binding}" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand"/>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
所以这部分:只需添加cm:View.Model="{Binding}"
和<ContentView/>
,效果非常好!