Использование элемента управления ActiveX в WPF

Я пытаюсь разместить элемент управления ActiveX в приложении WPF. После попытки использовать существующую информацию в сети и здесь я зашел в тупик.

Мне нужно использовать элемент управления ActiveX, предоставленный для связи с измерителем мощности УФ . Они предоставляют приложение , которое регистрирует и использует элемент управления, и даже включает некоторые полезные демонстрационные приложения. Я вырезал файл OCX и при необходимости поместил его сюда . У вас не будет измерителя мощности для разговора, но приложение и демонстрации по-прежнему будут успешно загружать элемент управления ActiveX.

Я создал простое приложение Windows Forms. Мне удалось вывести элемент управления ActiveX на панель инструментов, перетащить его в свою форму, и все нормально. Предоставляемые ими демонстрационные приложения также делают это.

Однако заставить это работать в среде WPF - совсем другое дело. Элемент управления нельзя добавить на панель инструментов и «перетащить» в приложение.

Пока что я пробовал две техники:

  1. Метод, найденный здесь . Я могу добавить ссылку на элемент управления, но затем вхожу в ад пространства имен. Предлагаемое им пространство имен xmlns: ax не может найти информацию. Вот моя попытка, основанная на том, что сообщает мне средство просмотра объектов: xmlns: ax = "clr-namespace: OphirUsbXLib; assembly = Interop.OphirUsbXLib"
  2. Метод, найденный здесь . По сути, это создание нового проекта, который создает библиотеку на основе Windows Forms, которая содержит элемент управления ActiveX (yikes). Я могу добавить Windows Forms Host, но я не могу получить доступ к элементу ActiveX внутри. Я могу сделать элемент управления общедоступным, но я все еще не могу вызывать методы и т. Д. Это не похоже на правильное решение.

Короче говоря, у меня есть элемент управления ActiveX, который прекрасно работает в Forms, но это настоящая сука, чтобы заставить работать в WPF.

Любое понимание приветствуется!

1
задан BabaBooey 7 September 2010 в 20:29
поделиться