Получение имени XMLNS не обнаружено, хотя класс существует в пространстве имен

enter image description here

Я пытаюсь передать пространство имен IntegerUpdown из xceed.wpf.Toolkit. Когда я использую браузер объектов, я мог видеть IntegerUpdown, но при построении я получаю ошибку:

Ошибка 15 Название "IntegerUpDown" не существует в пространстве имен "пространство имен clr: Xceed.Wpf.Toolkit; assembly = WPFToolkit.Extended".

Ответ 1

WPFToolKit определил псевдоним или пользовательское пространство имен http://schemas.xceed.com/wpf/xaml/toolkit. См. Ниже.

<Window x:Class="WPFComm_Learning.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:tool="http://schemas.xceed.com/wpf/xaml/toolkit"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <StackPanel>
            <tool:IntegerUpDown/>            
        </StackPanel>
    </Grid>
</Window>

Ответ 2

Я тоже столкнулся с этим, и это сбило меня с ума в течение большей части дня. Мое приложение скомпилировано и работает нормально, но дизайнер не смог отобразить мой пользовательский интерфейс - настоящая проблема, так как я все еще работал над этим интерфейсом.

Вещи, которые я пробовал, которые не работали:

  • Очистите и перестройте приложение.
  • Выгрузить и перезагрузить проект.
  • Перезапустите Visual Studio.
  • Переустановите с помощью Nuget.
  • Переключение между конфигурациями Debug и Release.
  • Переключение между целевыми платформами x86 и x64.
  • Укажите псевдоним пространства имен, используя явную ссылку на пространство имен/сборки, а не ссылку URL, показанную в LightSwitch выше.

Наконец, после большого скрепок я обнаружил эту статью, которая пролила некоторый свет. В двух словах, поскольку сборки были получены из внешнего источника (в данном случае Codeplex project), Windows установила флаг Blocked на каждом из файлы сборки. Чтобы исправить это, просто щелкните правой кнопкой мыши по каждому файлу и просмотрите его диалоговое окно "Свойства"; если в нижней части отображается кнопка Разблокировать, щелкните ее, чтобы очистить блок. (Это предполагает, конечно, что вы доверяете происхождению этих сборок - остерегайтесь emptor.)

Может потребоваться один дополнительный шаг (не упомянутый в вышеупомянутой статье). Если в вашем проекте есть ссылки на сборку проблем, которые были созданы до того, как вы разблокировали файл (ы), вам может потребоваться удалить эти ссылки и повторно добавить их, чтобы обновить их.

Удачи!