#c# #winforms #dictionary #arcgis
Вопрос:
Я хочу реализовать веб-карту ArcGIS в своем приложении winform C#. Я нашел кучу ресурсов для этого в приложении WPF, но ничего для платформы winform. У меня есть API-ключ от ArcGIS, и я уже сделал веб-карту.
Кто-нибудь знает, возможно ли это вообще, или мне нужно использовать WPF для этого? Я попробовал GMap с открытым исходным кодом, и он поддерживает некоторые карты из ArcGIS, но я не понял, как добавлять «пользовательские» веб-карты по ссылке. Мне также нужно будет добавить учетные данные в свой пример.
F. eks Map.MapProvider = GMap.NET.MapProviders.ArcGIS_World_Street_MapProvider.Пример;
Редактировать, к сожалению, кажется, что лучшим решением является внедрение контроллера wpf в приложение winform.
Комментарии:
1. Вы можете разместить элемент управления WPF в WinForms: docs.microsoft.com/en-us/dotnet/desktop/wpf/advanced/…
Ответ №1:
Вы определенно можете использовать Esri ArcGIS Runtime SDK для этого. Да, это элемент управления WPF, но это не проблема. Вам нужно будет использовать ElementHost для размещения содержимого WPF в представлении WinForms, и это полностью поддерживается, кроме среды выполнения. Просто имейте в виду, что WinForms использует программный рендеринг, поэтому вы не получите такой хорошей производительности, как в чистом окне WPF, UWP или WinUI3. Таким образом, вы просто будете следовать всем найденным документам о том, как это сделать в WPF, а затем отобразите эту часть представления внутри узла элементов вашего приложения WinForms.
Документ хоста элемента WinForms: https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.integration.elementhost?просмотр=сеть-5.0
Концептуальный документ/примеры размещения WPF в WinForms:
- https://docs.microsoft.com/en-us/dotnet/desktop/winforms/advanced/walkthrough-creating-new-wpf-content-on-windows-forms-at-design-time?view=netframeworkdesktop-4.8
- https://docs.microsoft.com/en-us/dotnet/desktop/wpf/advanced/walkthrough-hosting-a-wpf-composite-control-in-windows-forms?view=netframeworkdesktop-4.8
- https://docs.microsoft.com/en-us/dotnet/desktop/wpf/advanced/walkthrough-hosting-a-3-d-wpf-composite-control-in-windows-forms?view=netframeworkdesktop-4.8
/Мортен Нильсен — Ведущий разработчик (ArcGIS Runtime SDK для .NET)
Ответ №2:
Если я правильно понимаю, вам нужна карта мира, я не знаю, что вы планируете с ней делать, поэтому, если вы просто хотите отобразить карту мира, я нашел об этом учебник на YouTube, который может помочь, https://www.youtube.com/watch?v=TxSJJfaAzKg
Если вам нужна интерактивная карта, и arcgis сделает это за вас, вы можете эмулировать элемент управления WPF в приложении winforms, https://www.youtube.com/watch?v=VfpzVDAJ1fE
Извините, если я показываю видео на YouTube только в качестве источников, а не фактической документации, но, по крайней мере, это делает свою работу.