-1

マージされたリソース ディクショナリを使用すると、アプリケーションのパフォーマンスが低下します。私のアセンブリでは、マージされたリソース ディクショナリを頻繁に使用する必要があります。リソースを 1 つの辞書に結合し、元の baml を削除したい。Build Action を (Page ではなく) None に設定することはできません。この場合、一部の機能が失われるためです (たとえば、resharper による構文の強調表示がないなど)。これどうやってするの?

4

1 に答える 1

1

実行時に、アプリケーションはリンクされた BAML リソース ファイルを読み取る必要があります。このため、アセンブリから BAML を削除することはできません。

例えば:

次のリソース ディクショナリをマージします

  • dictionary1.xaml
  • dictionary2.xaml

merged.xaml

コンパイル済みの XAML (BAMLdictionary1.bamlおよびdictionary2.baml) を単純に削除することはできません。なぜなら、私が書いたように、実行時にこれらのリソースがまだ必要だからです。

ただし、とにかく、XAML リソースのコンテンツを に文字通りコピーすることもできます。merged.xamlこの方法では、merged.baml(コンパイラがアセンブリ リソース パーツでそれを生成した後) しか取得できません。

于 2012-06-22T09:45:12.573 に答える