我有一个带有几个 DataTemplate
的 View 。每个 DataTemplate
都有一个 View 和 ViewModel,如下所示:
<DataTemplate DataType="{x:Type viewModels:exampleViewModel}">
<AdornerDecorator>
<ScrollViewer>
<views:exampleView />
</ScrollViewer>
</AdornerDecorator>
</DataTemplate>
然后我有一个绑定(bind)到
TabControl
的 DataContext
。在 DataContext 中,有一个 Collection,其中包含 DataTemplates 引用的所有不同 viewModel 的列表:
<TabControl
DataContext="{Binding}"
ItemsSource="{Binding Collection, Mode=OneWay}">
<TabControl.ItemTemplate>
<DataTemplate>
<TextBlock
Text="{Binding}" />
</DataTemplate>
</TabControl.ItemTemplate>
</TabControl>
显然,包含 TabControl 的 View 有一个“主” View 模型。
这很有效,为我为 Collection 中的每个项目创建
TabItem
s,并设置每个页面的内容。我现在想把它移到 Catel 但不知道从哪里开始,因为(如果我错了,请纠正我):
有什么建议么?
最佳答案
我建议搬到卡特尔。它确实解决了这个问题(这实际上是它最初被编写的原因)。作为一个好的起点,请查看大量文档:
https://catelproject.atlassian.net/wiki/display/CTL/Catel+documentation+Home
一个很好的阅读是 WPF 部分的入门:
https://catelproject.atlassian.net/wiki/display/CTL/Getting+started+with+WPF
另请查看示例存储库:
https://github.com/Catel/Catel.Examples
关于c# - Catel 中的 ViewModel 集合,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25286129/