我为Frame创建了一些没有键的DataTemplates,因此如果我将Page中的ViewModel放在他的Content中,它可以理解应该显示哪个页面。那很好。但我想在我的ItemsControl.Rescources中使用这些Datatemplates,以便使Items看起来与众不同。
如果我在App.Rescources中为这些ViewModels提供了一些数据模板,则无法在ItemsControl.Resources中使用/覆盖它们。我没有收到任何编译时错误,但是在启动程序后显示,项目内容不能为页面。
<App>
<App.Resources>
<Datatemplate Datatype="{x:Type ViewModel1}">
<Page1/>
</Datatemplate>
<Datatemplate Datatype="{x:Type ViewModel2}">
<Page2/>
</Datatemplate>
</App.Resources>
</App>
<ItemsControl>
<ItemsControl.Resources>
<Datatemplate Datatype="{x:Type ViewModel1}">
<Button1/>
</Datatemplate>
<Datatemplate Datatype="{x:Type ViewModel2}">
<Image1/>
</Datatemplate>
</ItemsControl.Resources>
</ItemsControl>