Ссылка на сборку не найдена в XAML, но код компилируется при ссылке в xaml.классе по информатике

у меня странная проблема с добавлением ссылки на dll. У меня есть приложение WPF и я пытаюсь использовать библиотеку WPF MDI:http://wpfmdi.codeplex.com/

как указано в инструкциях (которые очень расплывчаты), я щелкнул правой кнопкой мыши по ссылкам в VS2012, нажал на Add reference.., нажал на Browse.. и добавил мою dll, которую я загрузил.

затем я добавил следующую строку в XAML моего окна:xmlns:mdi="clr-namespace:WPF.MDI;assembly=WPF.MDI" как говорится в инструкции.

однако, при попытке добавить <mdi:MdiContainer> в XAML отображаются следующие сообщения об ошибках:

The type 'mdi:MdiContainer' was not found. Verify that you are not missing an assembly reference and that all referenced assemblies have been built.

The name "MdiContainer" does not exist in the namespace "clr-namespace:WPF.MDI;assembly=WPF.MDI".

это мой XAML:

<Window x:Class="QueryBuilder.Table"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:mdi="clr-namespace:WPF.MDI;assembly=WPF.MDI"
        Height="300" Width="300" WindowStyle="ToolWindow" ResizeMode="NoResize" ShowInTaskbar="False">
</Window>

эта проблема расстраивала меня весь день. Я пробовала практически все мыслимые. Одна вещь, стоит отметить, что я downlaoded образец заявления с сайта библиотеки, и я могу запустить его без проблем. Кроме того, я добавил: это для xaml.класс cs моего проекта:WPF.MDI.MdiContainer d = new WPF.MDI.MdiContainer(); и он компилируется без каких-либо проблем.

обратите внимание, что моя первоначальная проблема была спросил здесь, и ни одно из предложений не сработало. Однако проблема теперь изменилась из-за приведенного выше абзаца, который, похоже, указывает, что код успешно скомпилирован в коде, но не в файле XAML.

EDIT: я также хотел бы добавить, что я могу просматривать код ссылки на сборку, как показано ниже.

enter image description here

3 ответов


Я, наконец, решил проблему сам - собираюсь оставить этот ответ здесь, Если у кого-то есть такая же проблема некоторое время. Добавление самого решения в ссылочный путь сборки решает проблему! Жаль, что это не задокументировано...

EDIT: чтобы уточнить, что я сделал, это добавить решение, а не dll. Другими словами, я добавил решение MDI со всеми его классами. Это, естественно, относится к DLL, где исходный код также доступен.


Если Visual Studio будет продолжать жаловаться и подчеркивать даже после того, как вы попробовали все, просто завершите XDesProc.exe процесс с помощью Диспетчера задач, а затем перестроить решение. Поддержка WPF и XAML в Visual Studio-ужасный недоделанный кусок дерьма.


получил файл sln от http://wpfmdi.codeplex.com/.Постройте этот проект и используйте новый .dll из bin, использовал это, тогда он работал нормально для меня.