在同一资源中使用样式字典和转换器

在同一资源中使用样式字典和转换器

问题描述:

我有一个小程序,它具有基于布尔值的项目背景颜色的转换器。我也有一个样式表来涵盖很多基本的格式。我有这两个独立工作,但是当我尝试了在一起,如:在同一资源中使用样式字典和转换器

UserControl.Resources> 
    <converter:RawMaterialHighlight x:Key="RawMat"></converter:RawMaterialHighlight> 
    <ResourceDictionary Source="../Styles.xaml"></ResourceDictionary> 
</UserControl.Resources> 

我得到2个错误:

每个字典条目必须具有相关联的密钥。

添加到IDictionary中的所有对象都必须具有Key属性或与其关联的其他类型的键。 13号线位置10

当我添加X:关键“说文解字”的字典行,它说,它无法解析字典资源

<TextBlock Text="Material Type" Style="{StaticResource ResourceKey=TextBlockSectionHeader}"></TextBlock> 

资源“TextBlockSectionHeader”不能解决。

如果我添加Dict.TextBlockSectionHeader我得到相同的'无法解决'的错误。我假设我在参考资料部分中错误地声明了它,但到目前为止,我仍然无法找到解决方案。

我在这里找到了答案:Merged dictionaries and local resources

的答案是下一个在合并字典中的风格,把整个事情的资源字典里:

<UserControl.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries>     
      <ResourceDictionary Source="../Styles.xaml"></ResourceDictionary> 
     </ResourceDictionary.MergedDictionaries> 
     <converter:RawMaterialHighlight x:Key="RawMat"></converter:RawMaterialHighlight> 
    </ResourceDictionary>   
</UserControl.Resources>