尝试将我们的大型项目升级到SL4时出现(其他)错误。我没有写原始主题,我的主题知识不是很好。在我的SL3应用程序中,我有一个主题为datagrid的数据网格:
<!--Datagrid Style-->
<Style TargetType="datagrid:DataGrid">
<Setter Property="RowHeaderStyle" Value="{StaticResource System.Windows.Controls.Primitives.DataGridRowHeader}"/>
<Setter Property="RowBackground" Value="Transparent"/>
<Setter Property="etc" Value="..."/>
</Style>
当我升级到SL 4时,上面XAML中的第一行会出现运行时错误:
无法使用名称/密钥System.Windows.Controls.Primitives.DataGridRowHeader找到资源
我应该在SL4中以不同的方式处理这个问题吗?
编辑:从给出的答案看来,这应该永远不会奏效。就像我说我没有写原始主题,所以不确定它正在尝试做什么。如果我搜索那个静态资源行,它确实出现在几个地方。你知道它试图实现什么吗?你认为我可以安全地删除使用这种引用方式的主题属性(在我所拥有的主题中有几个像这样引用控件的地方)?
TIA
标记
显示错误的示例:
http://walkersretreat.co.nz/files/SilverlightApplication1.zip
答案 0 :(得分:3)
马克 - 你有一个有这个名字的资源吗? SL4 XAML解析器得到了改进和更严格。我没有在项目的任何地方看到具有该名称的资源,因此解析器正在考虑它。
答案 1 :(得分:1)
尝试使用Jeff Willcox的芒果UT工具包 - http://www.jeff.wilcox.name/2011/06/updated-ut-mango-bits/ 此致