Как расширить управление COM в .NET (C #)? - PullRequest
0 голосов
/ 07 декабря 2011

Я использую MapPoint COM в небольшом инструменте для работы.Он берет адреса из текстового файла и импортирует их как остановки в MapPoint.

Насколько я знаю, существует не так много возможностей или методов, с которыми я мог бы работать, чтобы получить больше от MapPoint COM.Что приводит меня к вопросу, как, если можно, расширить COM, чтобы извлечь из него больше пользы?

Вот несколько идей, которые я имею в виду под расширением

  • Внешний список (DataSource) для путевых точек
  • Пользовательские события для MapPoint.ActiveMap.ActiveRoute.Waypoints (т. е. когда путевая точка добавлена, удалена, выбор изменен и т. д.) {не важно, если пользовательский список может быть установлен в качестве источника данных, см. раздел}
  • Пользовательские объекты MapPoint.Waypoint

Ответы [ 2 ]

0 голосов
/ 07 декабря 2011

@ Классы-обертки Ричарда Брайтвелла могут помочь обеспечить то, что вы хотите, но я думаю, что в целом вы будете ограничены. Как говорит @Hans Passant, только Microsoft может изменять внутреннюю часть приложения MapPoint.

Неясно, что вы подразумеваете под источником данных о путевых точках, но вы можете легко написать код, который считывает данные путевых точек откуда-то (где угодно), а затем использует их для создания путевых точек (и / или меток) по одному в MapPoint .

Вы никогда не сможете добавлять свои собственные типы событий, если только ваши классы-оболочки не запускают промежуточные события. Например. Метод класса X может сделать X. X содержит шаги a, b, c, а шаг b запускает событие в вашем коде .

0 голосов
/ 07 декабря 2011

Напишите элемент управления COM библиотеки или библиотеку, которая предоставляет возможности объекта MapPoint COM, а также новые функции, которые вы пишете сами.

Редактировать: Подробнее о классах-оболочках: Что такое класс-обертки?

...