2012-03-26 8 views
0

WP7アプリケーションで辞書をマージする際に少し問題があります。アプリケーションには多くのページが含まれています。読み込み時間が5秒を超えています。読み込み時間を削減するためにページとUIの大部分を別のクラスライブラリに入れなければならなかったが、問題はページがグローバルなapp.xaml内の静的リソースを参照していることで、アプリケーション内の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

+1

私の例では "AssemblyName"と言うとき、 –

+0

おかげさまで、完全修飾構文を使用してページを作成するのにビルドアクションを作ったが、うまくいかなかった、私は本当に混乱していた!奇妙な! – Waleed