Тип "Microsoft.CompactFramework.Design.UnsafeControl" не имеет свойства с именем - PullRequest
4 голосов
/ 29 января 2011

Я получаю эту ошибку при открытии конструкторского представления формы, в которой есть Honeywell DecodeControl (для сканера штрих-кодов Honeywell - Dolphin 6100, если кому-то интересно).

Я погуглил это до смерти и сделал следующее:

добавил файл XMTA со следующим:

<?xml version="1.0" encoding="utf-16"?>
<Classes xmlns="http://schemas.microsoft.com/VisualStudio/2004/03/SmartDevices/XMTA.xsd">
  <Class Name="Honeywell.DataCollection.WinCE.Decoding.DecodeControl">
    <Description></Description>
    <DesktopCompatible>true</DesktopCompatible>
    <DesignTimeVisible>true</DesignTimeVisible>
  </Class>
</Classes>

Установите для указанного действия по построению XMTA значение 'none'

Игнорирование первой ошибки по-прежнему дает мне «Ссылку на объект, не установленную для экземпляра объекта».

Это совсем не помогло.

После некоторого продолжительного поиска в Google это, по-видимому, связано с элементами управления, которые зависят от устройства, и эта ошибка, как предполагается, останавливает все, что может вызвать нестабильность в конструкторе ... за исключением того, что этот элемент управления работает довольно счастливо дизайнер весь день на работе, потом, когда я прихожу домой, это бросает в меня это. Ничего не изменилось - тот же компьютер разработчика, то же устройство, тот же проект, тот же код, что и при последнем сохранении его на работе.

Я даже не пытаюсь отладить устройство на рабочем столе или в эмуляторе - устройство подключено через USB-док-станцию.

Буквально единственное, что изменилось, это то, что аппарат dev подключен к моей домашней сети по беспроводной сети, а не через CAT5 для рабочей сети. И я не вижу, чтобы это было хоть как-то связано с этим.

На более связанной ноте рассматриваемый элемент управления никогда не обнаруживался в наборе инструментов после того, как я выбрал Выбрать элементы -> проверить элемент управления. Не уверен, если это связано.

Может ли кто-нибудь пролить свет?

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

Спасибо

Ответы [ 3 ]

3 голосов
/ 02 февраля 2011

Оказывается, я нацелился не на ту платформу для устройства - VS решил по собственному желанию, что мне нужно нацелиться на 3.5 вместо 2.0. Переключил обратно и все хорошо.

0 голосов
/ 03 августа 2015

У меня такая же проблема в VS2102 с WEC2013.

И без P / Invoke, но с пользовательским элементом управления, полностью управляемым кодом .net.Проблема в свойствах Enum моего пользовательского элемента управления.И пока НЕТ решения.

0 голосов
/ 06 мая 2015

Я столкнулся с этой ошибкой, но она была вызвана моей игрой с API MessageBeep в форме. Хотя эта форма никак не связана с моими пользовательскими элементами управления или компонентами, просто наличие этой ссылки на пространство имен Interop в форме повредило все элементы управления в моем приложении и сделало невозможным их просмотр в конструкторе.

Мораль этой истории - НЕ ИСПОЛЬЗОВАТЬ Interop IN CE (PInvoke).

Это было страшно. Просто на голову любой другой несчастной душе, пытающейся издать звуковой сигнал.

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