VS Xaml дизайнерская ошибка - PullRequest
4 голосов
/ 02 ноября 2009

У меня ошибка с моими файлами Xaml в приложении WPF. Я не могу видеть свой элемент управления в конструкторе Visual Studio или в Blend. Но приложение компилируется и работает отлично.

В Blend написано, что существует недопустимый Xaml, и ошибка просто не имеет никакого смысла, но когда я закрываю элемент управления, ошибки больше нет.

В Visual Studio ошибка более явная.

Error   27  Invalid XmlnsDeclaration occurs in assembly 'Microsoft.Expression.Interactivity, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. XmlnsDeclaration references a namespace 'Microsoft.Expression.Interactivity.Layout' that is not in the assembly.   

Я провел исследование этой ошибки и нашел некоторые интересные вещи.

Решение 1

Создание фиктивного класса с пространством имен Microsoft.Expression.Interactivity.Layout .

Результат? Не работает.

Решение 2 Использование ...

xmlns:i="clr-namespace:Microsoft.Expression.Interactivity;assembly=Microsoft.Expression.Interactivity"

вместо

xmlns:i="http://schemas.microsoft.com/expression/2009/interactivity"

... чтобы добавить мою ссылку.

Результат? Я уже делал это таким образом.

UPDATE

Попробовал ссылку на URL схемы только в Blend и до сих пор не работает.

Ошибка:

"The specified value cannot be assigned to the collection. The following type was expected : "TriggerAction".

С этим кодом:

<interactivity:Interaction.Triggers><interactivity:EventTrigger  EventName="SelectionChanged" ><my:CommandAction Command="{Binding BreedingListSelectionChanged}" SyncOwnerIsEnabled="True" /></interactivity:EventTrigger></interactivity:Interaction.Triggers

Наконец, я нашел это сообщение от парня из службы поддержки сообщества Microsoft. Он говорит, что это известная проблема, и она, вероятно, будет исправлена ​​в следующем выпуске.

Дело в том, что мне это нужно прямо сейчас.

Кто-нибудь сталкивался с этой проблемой?

Спасибо.

1 Ответ

3 голосов
/ 02 ноября 2009

Я подал ошибку в Connect относительно этого точного поведения.

Короткий ответ: это не будет исправлено для VS 2008, но оно работает в VS 2010. Лучшее решение, которое я нашел, - это использовать Blend для проектирования пользовательского интерфейса (с использованием синтаксиса выражения / 2009 / интерактивность) установите Visual Studio для редактирования XAML как XML (без использования дизайнера). Это хорошо сработало для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...