Как AvalonDock может ссылаться на свою сборку? - PullRequest
0 голосов
/ 15 ноября 2011

http://avalondock.codeplex.com/SourceControl/changeset/view/62498#1218343

<ResourceDictionary Source="/AvalonDock;component/Resources/Common.xaml"/>

Должно быть что-то, чего я не понимаю, ни в синтаксисе свойства Source ResourceDictionary, ни в том, как компилируется XAML.Я хотел бы вставить исходный код AvalonDock непосредственно в проект, но похоже, что некоторые из его файлов XAML ссылаются на «сборку AvalonDock».

Как это может быть?

Ответы [ 2 ]

0 голосов
/ 15 ноября 2011

Свойство Source ResourceDictionary на самом деле является Uri, которое, по сути, представляет путь к ресурсу. В этом случае он просто говорит, что нужно посмотреть сборку AvalonDock и найти файл Common.xaml. См. Pack URI в WPF для получения дополнительной информации.

Если вы хотите включить в свой проект источник AvalonDock, вам следует заменить часть URI /AvalonDock; на часть вашего проекта (если вы поместили файл Common.xaml в тот же каталог, что и в проекте AvalonDock) ).

0 голосов
/ 15 ноября 2011

Поскольку разрешение ресурсов может происходить из любой другой сборки, источник фактически содержит имя сборки, в которой существует ресурс.Потому что, когда ваше приложение работает, как .net узнает, из какой сборки загружать URL?

...