我正在尝试将资源字典添加到我的silverlight-4应用程序中(在http://msdn.microsoft.com/en-us/magazine/dd419663.aspx文章的“将视图应用于ViewModel”章节中建议)。
第一个问题:我的主页中没有看到任何资源。我是否正确理解我需要手动将资源字典添加到Silverlight应用程序中?
第二种:当我这样做时,在Dictionary1.xaml文件中
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:System="clr-namespace:System;assembly=mscorlib">
<DataTemplate DataType="{x:Type vm:MyViewModel}">
<vw:MyView />
</DataTemplate>
</ResourceDictionary>
我收到错误:无法解析符号'DataType'...
这有什么好主意吗?
答案 0 :(得分:1)
ad 1:MainPage有一个ResourceDictionary。你可以在xaml中添加元素,如下所示:
<MainPage>
<MainPage.ResourceDictionary>
<DataTemplate>
<vw:MyView />
</DataTemplate>
</MainPage.ResourceDictionary>
...
您可以使用ResourceDictionary的Source和MergedDictionaries属性将ResourceDictionary添加到MainPage.ResourceDictionary:
<MainPage>
<MainPage.ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Dictionary1.xaml"/>
</ResourceDictionary.MergedDictionaries>
</MainPage.ResourceDictionary>
...
ad 2:DataTemplate在Silverlight框架中没有Property DataType。 : - (
答案 1 :(得分:0)
如果它将在ResourceDictionary中,你还需要将一个x:Key添加到DataTemplate中。