2010-02-01 9 views
13

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

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

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

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

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

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

ОБНОВЛЕНИЕ Я разорвал всю конфигурацию x64 из своего решения и перестроил все без эффекта.

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

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

(отголоски сдавленным воплем отчаяния от унц)

ответ

17

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

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

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

Установите ех как x86 и x64 только (без AnyCPU) - не будет работать в смеси (не AnyCPU), , но решение все равно будет строить.

+0

Отлично, это исправлено! Я добавил конфигурацию и платформу AnyCPU и построил для нее все C#, ссылаясь на проект Win32 C++/CLI, и теперь он доступен для редактирования в Blend. –

+0

Спасибо за ответ, не могу «принять его», потому что отсутствующий контур галочки, предположим, что из-за щедрости, в первый раз я поставил щедрость на вопрос. –

+0

Попробуй спросить у меня, как использовать систему бонусов. (Никогда не использовал его сам). –

10

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

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

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

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

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

Для

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

Мэтт, знаете ли вы о последствиях ваших изменений? Если у вас есть какие-либо DLL-библиотеки x86, ваше приложение больше не будет работать на машине x64. –

+0

Именно поэтому это провалилось. Удобно, у меня есть роскошь строить все мои зависимости в AnyCPU. – MattS423

+0

См. Мой следующий ответ о том, как успешно работать как с x86, так и с x64: http://stackoverflow.com/a/6446638/38368 –

3

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

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

0

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

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

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

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

Смежные вопросы