WPF異常:在「System.Windows.Markup.StaticResourceHolder」上提供值時引起了異常。

異常背景:app

  第一次開發 WPF 時,全部資源都定義在 App.xaml 文件中。隨着項目資源的增多,查看與修改資源時很麻煩,就在 App.xaml 以集成資源字典的方式。ide

異常緣由:spa

  在 App.xaml 中定義資源時,我把項目中須要使用的 Class 都寫在最上面    code

<Application.Resources>
  <app:ColorCollection_Column x:key="C_CCC"/>
  ...
</Application.Resources>       
App.xaml

   在 App.xaml 中集成資源字段時,我把 Class 與 其它資源分開xml

<ResourceDictionary 
    xmlns:app ="clr-namespace:TZCloud"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <app:ColorCollection_Column x:Key="C_CCC"/>
</ResourceDictionary>
資源字典 - Class
<ResourceDictionary 
    xmlns:app ="clr-namespace:TZCloud"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    ...
</ResourceDictionary>
資源字典 - 其它
<Application.Resources>
  <ResourceDictionary >
    <ResourceDictionary.MergedDictionaries>
      <ResourceDictionary Source="Dictionary\Other.xaml"/>
      <ResourceDictionary Source="Dictionary\Class.xaml"/>              
    </ResourceDictionary.MergedDictionaries>
  </ResourceDictionary>
</Application.Resources>   

  由於 Class 資源聲明在後,而其它資源聲明(該資源中有對 Class 資源的引用 )在前,因此報錯。blog

相關文章
相關標籤/搜索