C# WPF AvalonDock

219
14 июля 2018, 18:00

Устанавливаю AvalonDock через NuGet и все нормально работает, но я бы хотел использовать source code в проекте. Копирую классы и все остальное и VS 2017 видит xmlns но бросает ошибки на сами теги. Пишет что не видит DockingManager в namespace и подобное. Изменял на "clr-namespace: ..." все находит но не рендерит, проект запускается и ничего не видно.

Answer 1

Как подключать сторонние проекты в свой:

  1. Скачиваем исходный код.
  2. Распаковываем в директорию рядом с нашим проектом (либо в любом другом месте). В вашем случае там две папки, одна из которых заканчивается на "_35" - это версия .NET 3.5.
  3. В основном проекте жмём правой кнопкой мыши по нашему решению - Добавить - Существующий проект.

  1. Выбираем файл .csproj нужного компонента (у вас это ExtendedWPFToolkitSolution\Src\Xceed.Wpf.AvalonDock\Xceed.Wpf.AvalonDock.csproj).
  2. Пересоберите все решение, должно собраться без ошибок. Если они есть - ищем виновника, может проект на что то ссылается. В итоге в консоле должны увидеть:
========== Перестроение всех проектов: успешно: 2, с ошибками: 0, пропущено: 0 ==========

6. Если ошибок нет, то двигаемся дальше, а именно, добавление в основном проекте ссылки на сторонний. Жмём у нашего проекта ПКМ по "Ссылки" - "Добавить ссылку". 7. В появившемся окне сбоку выбираем "Проекты", там увидим сторонний проект. Выбираем его "галкой" и жмём ок.

  1. Желательно ещё раз пересобрать решение. Далее мы можем работать с этим компонентом. Я возьму код из документации, уберу только из него все лишнее.
  2. Я не знаю как лично у вас, но у меня при написание XAML кода сама студия предлагает добавить недостающие пути на ту или иную сборку, если у вас не так, то не забываем добавить вручную:

    xmlns:xcad="http://schemas.xceed.com/wpf/xaml/avalondock"
    

Ура, можно запускать!