Ссылка на сборку не найдена в 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: я также хотел бы добавить, что я могу просматривать код ссылки на сборку, как показано ниже.
3 ответов
Я, наконец, решил проблему сам - собираюсь оставить этот ответ здесь, Если у кого-то есть такая же проблема некоторое время. Добавление самого решения в ссылочный путь сборки решает проблему! Жаль, что это не задокументировано...
EDIT: чтобы уточнить, что я сделал, это добавить решение, а не dll. Другими словами, я добавил решение MDI со всеми его классами. Это, естественно, относится к DLL, где исходный код также доступен.
Если Visual Studio будет продолжать жаловаться и подчеркивать даже после того, как вы попробовали все, просто завершите XDesProc.exe процесс с помощью Диспетчера задач, а затем перестроить решение. Поддержка WPF и XAML в Visual Studio-ужасный недоделанный кусок дерьма.
получил файл sln от http://wpfmdi.codeplex.com/
.Постройте этот проект и используйте новый .dll из bin, использовал это, тогда он работал нормально для меня.