Несколько месяцев назад я создал приложение Winform, которое назначает встречи специалистам по ремонту. Я хотел бы обновить приложение, добавив карту для адреса клиента в формуляре клиента, а затем распечатать эту карту в отчете, который получают технические специалисты, когда они покидают офис.
Я оглядывался по сторонам, но пока не нашел хорошего решения для этого.
У меня сейчас есть адрес для клиента. Что я хотел бы сделать, это отправить адрес на один из популярных сайтов онлайн-карт и получить мини-карту локали. Я могу почти сделать это с помощью карт Google, используя встроенную функцию ссылок. Я могу получить следующий HTML после добавления адреса на их сайт:
<iframe width="300" height="300" frameborder="0" scrolling="no"
marginheight="0" marginwidth="0"
src="http://maps.google.com/maps?hl=en&ie=UTF8&t=h&g=1193+Presque+Isle+Dr,+Port+Charlotte,+FL+33952&s=AARTsJqsWtjYwJ7ucpVS6UU2EInkRk6JLA&ll=27.012108,-82.087955&spn=0.005735,0.006437&z=16&output=embed">
</iframe>
Мой первый план состоял в том, чтобы просто проанализировать этот HTML-код и вставить тот адрес клиента, который был необходим, вместо этого адреса, а затем показать результат в объекте браузера в форме. Однако, если я изменю адрес в вышеупомянутом iframe, Google выдаст мне сообщение «Ваш клиент не имеет разрешения на получение URL ...».
У меня нет никаких предпочтений относительно того, какой картографический сервис я в конечном итоге использую, важно то, что решение не может иметь связанные с этим расходы и его можно использовать из форм Windows.
Кто-нибудь получил идеи / рекомендации / ресурсы о том, как справиться с этим?
Результаты
В итоге я использовал найденный элемент управления здесь . Я нахожу это "хорошо" решение ... это утомительно работать, так как код не работает как есть. Я очень удивлен, обнаружив, что ни один из популярных API-интерфейсов карт не поддерживает winforms.