Microsoft Virtual Earth стремительно развивается, чтобы бросить вызов Google Earth. Теперь он называется Bing Maps, и есть новый элемент управления Silverlight, который позволяет программировать Bing Maps с использованием технологии .NET.
Microsoft Virtual Earth быстро развивается, чтобы бросить вызов Google Earth. Теперь он называется Bing Maps, и есть новый элемент управления Silverlight, который позволяет программировать Bing Maps с использованием технологии .NET. Исходный элемент управления Javascript / Ajax по-прежнему поддерживается, и если вам нужна технология, нейтральная к платформе, тогда это правильный путь. Однако Silverlight представляет собой гораздо более богатую среду разработки, и запуск новых проектов с ее использованием дает значительные преимущества.
Начиная
Сначала загрузите с веб-сайта Microsoft и установите Visual Studio или Express Web Developer 2010 — убедитесь, что это последние версии.
Затем загрузите и установите инструменты Silverlight 4 — это также должна быть последняя версия. После установки вы должны увидеть Silverlight 4 SDK в меню «Пуск», а когда вы откроете Visual Studio 2010, вы сможете выбрать Silverlight 4 в качестве целевой версии.
Предполагая, что все это работает, мы можем перейти к элементу управления Silverlight Bing Maps. Первое, что нужно сделать, это загрузить и установить элемент управления — поискать в загрузках Microsoft Bing Maps Silverlight Control. Вы можете просто принять все значения по умолчанию во время установки.
Чтобы попробовать, запустите Visual Studio и создайте новое приложение SilverLight. После того, как все стандартные файлы созданы и проект готов к использованию, стоит убедиться, что вы создали приложение Silverliight, размещенное на веб-сервере. Просто выберите «Выполнить», и вы увидите пустую веб-страницу с URL-адресом, начинающимся с http // localhost //. Это подтверждает, что проект обслуживается сервером разработки ASP .NET, а не просто загружается из локального файла.
Чтобы добавить элемент управления Bing Maps в проект Silverlight, сначала необходимо добавить ссылку на необходимые сборки. Если вы приняли установочную папку по умолчанию при настройке элемента управления, вы найдете сборки, хранящиеся в:
C: \ Program Files \ Bing Maps Silverlight Control
Если быть точным, они хранятся в подкаталоге Vn \ Libraries, где n — номер версии элемента управления. На данный момент это элемент управления версии 1, поэтому сборки хранятся в:
C: \ Program Files \ Bing Maps Silverlight Control \ V1 \ Библиотеки
Чтобы добавить ссылку, используйте команду Project, Add Reference и перейдите в каталог:
C: \ Program Files \ Bing Maps Silverlight Control \ V1 \ Библиотеки
Выберите оба файла, которые вы видите в списке:
«Microsoft.Maps.MapControl.dll» «Microsoft.Maps.MapControl.Common.dll»
Как только у вас появятся соответствующие ссылки на сборки элементов управления картой, вы можете начать их использовать.
Добавление ссылок
XAML
Чтобы использовать элемент управления картой из XAML, проще сначала добавить пространство имен, чтобы можно было ссылаться на классы в сборках с префиксом m.
Добавьте строку:
xmlns: m = «clr-namespace: Microsoft. Maps.MapControl; assembly = Microsoft.Maps.MapControl»
в тег в файле XAML приложения Silverlight (по умолчанию MainPage.xaml). Полный тег будет выглядеть примерно так:
Теперь мы можем добавить тег, который создает объект Map:
В большинстве случаев это будет помещено между сгенерированными тегами , чтобы дать что-то вроде:
Как только вы добавите тег карты, дизайнер отобразит вид карты по умолчанию. Вы не можете взаимодействовать или использовать средства карты в дизайнере — он просто действует как заполнитель.
Карта в дизайнере
Если вы сейчас запустите программу, вы обнаружите, что в браузере отображается карта, но затем появляется сообщение о том, что у вас недействительные учетные данные.
Вы должны зарегистрироваться на https://www.bingmapsportal.com/ и получить действующий ключ. Когда у вас есть ключ, вы можете применить его, назначив его свойству CredentialsProvider:
где, конечно, вы заменяете KEY своим настоящим ключом Bing Maps.
Если вы сейчас запустите приложение, вы увидите ту же карту, но теперь вы сможете взаимодействовать с ней, используя масштабирование, панорамирование и все другие инструменты по умолчанию.