2012-03-26 78 views
0

我在WP7應用程序中合併字典時遇到了一些問題,該應用程序包含大量頁面,加載時間超過了5秒鐘的市場限制,不得不將大部分頁面和UI的東西放在一個單獨的類庫中以減少加載時間,問題在於頁面文件引用全局app.xaml中的靜態資源,我試圖在App中移動xaml。 xaml到類庫項目中的單獨資源字典。我還在每個頁面中引用了該資源字典文件。引用類庫中頁面的xaml字典資源

<phone:PhoneApplicationPage.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="Resources.xaml" /> 
     </ResourceDictionary.MergedDictionaries> 
       <Converters:TimeSpanToWeekAndDayConverter x:Key="weekAndDayConverter"/> 
    </ResourceDictionary> 
</phone:PhoneApplicationPage.Resources> 

的問題是,我總是收到此異常: 無法分配財產「System.Windows.ResourceDictionary.Source」。

我也嘗試過將資源字典從頁面到資源的構建操作更改爲內容(具有所有特定路徑語法考慮因素),但沒有任何運氣。 我希望有人有一個想法。 感謝

回答

1
  1. 我不認爲你需要移動的資源 - 你可以讓他們在App資源。它應該工作。

  2. 您需要使用全名引用字典。在這種情況下:

    源= 「/的AssemblyName;組件/ Resources.xaml」

否則,它將不知道如何找到它。

+0

嘗試了兩種技巧,但不幸運:( – Waleed 2012-03-26 19:56:15

+1

當我在我的例子中說「AssemblyName」時,你需要給出你的庫使用的實際AssemblyName。另外,請確保你正確地標記了類型作爲頁面屬性中的資源文件 – 2012-03-26 19:59:06

+0

感謝哥們,我使用了完全限定的語法,並將頁面的構建動作製作成頁面,但沒有工作,我真的很困惑!奇怪!! – Waleed 2012-03-26 20:16:05