Blend "не поддерживается в проекте WPF"

У меня расстраивающее время с отчетами Blend. "Окно не поддерживается в проекте Windows Presentation Foundation (WPF)". из-за невыстроенных конфигураций, но не может решить, как отменить мой выход из него.

Я разработал это, вероятно, из-за того, что я пытаюсь создать одно решение с конфигурациями x86 и x64. Невозможно сказать Blend 2, который является активной конфигурацией решений и активной платформой решений.

Я думаю, что это небольшая слабость в системе конфигурации, или, может быть, так, как я это сделал, но у меня есть конфигурации Debug64 и Debug, одна из которых используется с платформой x86 и x64.

Я также считаю, что это простая проблема с сортировкой - x64 идет до x86, а Debug - до Debug64, поэтому Blend заканчивается неподготовленной конфигурацией Debug с x64.

Когда я выбираю комбинацию Debug и x64 в VS, ее редактор XAML также не может загрузить.

Решение является умеренно сложным - есть чистый проект Win32 DLL, С++/CLI Model и две другие сборки WPF, используемые в основном проекте WPF.

UPDATE Я разорвал всю конфигурацию x64 из своего решения и полностью перестроил все без эффекта.

Затем я удалил Blend 2 и установил Blend 3 - это тоже не нравится.

Редактор Visual Studio XAML по-прежнему очень счастлив, как и создание и запуск программы.

(отголоски задушенного крика расстройства от унции)

Ответы

Ответ 1

Blend требует, чтобы решение ALSO имело платформу AnyCPU в диспетчере конфигурации.
Любые проекты С++ (включая С++/CLI) в решении не будут загружены.

В моих решениях есть платформы AnyCPU + x86 + x64, AnyCPU не создает проекты без С#.

Поместите окна/элементы управления в DLL AnyCPU С#, чтобы их можно было редактировать в blend.
(Не ссылайтесь на проекты x86/x64 от них.)

Установите exe только как x86 и x64 (no AnyCPU) - не будет работать в blend (no AnyCPU), но решение все равно будет построено.

Ответ 2

Есть и несколько других причин, которые могут произойти:

1) Отсутствие ссылок. Добавьте ссылку на PresentationCore, PresentationFramework и WindowsBase

Он также может искать DLL файлы с неправильной платформы. Я просто решил проблему, выполнив следующие изменения:

В рассматриваемом файле .csproj измените эту строку

<Platform Condition=" '$(Platform)' == '' ">x86</Platform>

Для

<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>

Ответ 3

Я столкнулся с этой проблемой с VS2010 и Blend4. Внезапно мой проект не будет отображаться в Blend.

Проблема заключалась в том, что разработчик нашей команды настраивал пользовательские конфигурации сборки. Когда он это сделал, он удалил Debug. Как только я добавил Debug обратно в конфигурацию сборки, Blend снова был счастлив.

Ответ 4

На моей стороне я решил проблему следующим образом:

  • трюк AnyCPU (но недостаточно...)
  • Разгрузите проект, отредактируйте файл проекта, посмотрите ссылки 4.0 Framework и измените их на 4.5 (целевая и мини-требуемая версия).

rebuild solution, затем Blend Preview для WPF 4.5 остановился, чтобы показать messsage ошибки (окно не поддерживается...).

Спасибо всем за то, что поместили меня на трек!