Смесь "Окно не поддерживается в проекте WPF" - PullRequest
15 голосов
/ 01 февраля 2010

У меня разочаровывает время с отчетами 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, проект C ++ / CLI Model и две другие сборки WPF, используемые основным проектом WPF.

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

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

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

(эхо задушенного крика разочарования от унции)

Ответы [ 4 ]

18 голосов
/ 24 марта 2010

Blend требует решения, чтобы ТАКЖЕ иметь платформу AnyCPU в менеджере конфигурации.
Любые проекты C ++ (включая C ++ / CLI) в решении не будут загружены.

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

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

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

10 голосов
/ 20 апреля 2011

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

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

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

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

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

К

<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
3 голосов
/ 14 декабря 2011

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

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

0 голосов
/ 18 ноября 2012

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

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

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

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

...