我有一个带有几个DataTemplates的View.每个DataTemplate都有一个View和viewmodel,如下所示:
<DataTemplate DataType="{x:Type viewmodels:exampleviewmodel}"> <AdornerDecorator> <ScrollViewer> <views:exampleView /> </ScrollViewer> </AdornerDecorator> </DataTemplate>
然后我有一个TabControl绑定到DataContext.
在DataContext中,有一个Collection,其中包含DataTemplates引用的所有不同viewmodel的列表:
<TabControl DataContext="{Binding}" ItemsSource="{Binding Collection,Mode=OneWay}"> <TabControl.ItemTemplate> <DataTemplate> <TextBlock Text="{Binding}" /> </DataTemplate> </TabControl.ItemTemplate> </TabControl>
显然,View中有一个“主”viewmodel包含TabControl.
这非常有效,为集合中的每个项目创建TabItems,并设置每个页面的内容.
我现在想把它移到Catel,但不知道从哪里开始,因为(如果我错了,请纠正我):
>我现在不应该在任何viewmodel和任何viewmodel中引用任何其他viewmodel
> Catel会自动将我的Views和viewmodels链接起来.
有什么建议?
解决方法
我建议搬到卡特尔.它确实解决了这个问题(这实际上是它首先编写的原因).如需一个好的起点,请查看大量文档:
https://catelproject.atlassian.net/wiki/display/CTL/Catel+documentation+Home
一个很好的阅读是WPF部分入门:
https://catelproject.atlassian.net/wiki/display/CTL/Getting+started+with+WPF
另请查看示例存储库:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。