Глобальные ресурсы в библиотеке классов - PullRequest
6 голосов
/ 25 января 2011

В приложении Silverlight мы можем определять ресурсы в App.xaml и иметь доступ к ним из любого документа XAML, без необходимости явного объединения этих ресурсов.

Есть ли эквивалентное решение для библиотеки классов? Я создал отдельный словарь ресурсов в библиотеке классов, но мне нужно объединить его следующим образом, прежде чем я смогу его использовать.

<UserControl.Resources>
 <ResourceDictionary>
  <ResourceDictionary.MergedDictionaries>
   <ResourceDictionary Source="MyResources.xaml" />
  </ResourceDictionary.MergedDictionaries>
 </ResourceDictionary>
</UserControl.Resources>

Есть ли способ избежать этого? Это довольно утомительно делать в каждом документе XAML для глобально используемых ресурсов.

1 Ответ

1 голос
/ 25 января 2011

Я собирался задать этот же вопрос. К сожалению, то, что вы описали, довольно близко к тому, что я смог придумать. Теоретически, кажется, что вы должны иметь возможность поместить их в файл themes \ generic.xaml библиотеки, но я не смог сделать эту работу - возможно, я просто делаю что-то с головой. Лучшее, что я смог сделать, - это лишь немного более короткий вариант того, что вы делаете, а именно, исключить синтаксис MergedDictionaries:

<UserControl.Resources>
    <commonui:CommonStringsPublic x:Key="commonStrings" />
    <ResourceDictionary Source="/Alanta.Client.UI.Common;component/CommonResources.xaml" x:Key="commonResources" />
</UserControl.Resources>

Я бы хотел, чтобы кто-то указал мне на лучшее решение: -).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...