Добавьте элемент управления Silverlight Bing Maps в приложение Windows Phone 7
-
20-09-2019 - |
Вопрос
Я знаю, что фрагменты вышли только сегодня, но одна из первых вещей, которые я хочу сделать с недавно выпущенный пакет SDK для Windows Phone 7 это вывести карту на экран и возиться вокруг.
Я скачал последнюю версию Управление картами Silverlight и добавил ссылки в мое приложение.На самом деле, конструкторский вид MainPage.xaml версии VS 2010 показывает элемент управления map после добавления пространства имен и размещения элемента управления.
Я использую предоставленную версию VS 2010 Express, которая поставляется с Win Phone 7 SDK, и только что использовал Новый проект -> Шаблон приложения Windows Phone.
Когда я пытаюсь выполнить сборку, я получаю два предупреждения, связанные с библиотекой DLL Microsoft.Maps.MapControl.
Предупреждение 1 Основная ссылка "Microsoft.Maps.MapControl, Версия = 1.0.1.0, язык интерфейса= нейтральный, PublicKeyToken=498d0d22d7936b73, ProcessorArchitecture=MSIL" не удалось разрешить, поскольку он имеет косвенную зависимость от сборки фреймворка "System.Windows.Браузер, Версия = 2.0.5.0, культура = нейтральная, PublicKeyToken=7cec85d7bea7798e", которая не может быть решена в текущей целевой среде."Silverlight, версия=v4.0, Профиль=WindowsPhone".Чтобы решить эту проблему, либо удалите ссылку "Microsoft.Maps.MapControl, Версия = 1.0.1.0, язык интерфейса= нейтральный, PublicKeyToken=498d0d22d7936b73, ProcessorArchitecture=MSIL" или перенастроите ваше приложение на версию платформы, которая содержит "System.Windows.Браузер, Версия = 2.0.5.0, язык интерфейса= нейтральный, PublicKeyToken=7cec85d7bea7798e".
Предупреждение 2 Основная ссылка "Microsoft.Maps.MapControl.Распространенный, Версия = 1.0.1.0, Язык интерфейса= нейтральный, PublicKeyToken=498d0d22d7936b73, ProcessorArchitecture=MSIL" не удалось разрешить, поскольку он имеет косвенную зависимость от сборки фреймворка "System.Windows.Браузер, Версия = 2.0.5.0, культура = нейтральная, PublicKeyToken=7cec85d7bea7798e", которая не может быть решена в текущей целевой среде."Silverlight, версия=v4.0, Профиль=WindowsPhone".Чтобы решить эту проблему, либо удалите ссылку "Microsoft.Maps.MapControl.Распространенный, Версия = 1.0.1.0, Культура = нейтральная, PublicKeyToken=498d0d22d7936b73, ProcessorArchitecture=MSIL" или перенастроите ваше приложение на версию платформы, которая содержит "System.Windows.Браузер, Версия = 2.0.5.0, язык интерфейса= нейтральный, PublicKeyToken=7cec85d7bea7798e".
Я склоняюсь к какому-то способу добавления Системы.Windows.Браузер к целевой версии фреймворка.Но я даже не уверен, возможно ли это.
Чтобы быть более конкретным;Я ищу способ настроить управление Silverlight Maps в приложении Windows Phone 7 series.Если это возможно.
Спасибо.
Решение 2
Если вы добавите ссылку на System.Windows.Browser.dll , обычно находящийся в одном из каталогов версий в "C:\Program Файлы\Microsoft Silverlight" (мой был в C:\Program Files\Microsoft Silverlight\3.0.50106.0), приложение будет создано, и вы сможете увидеть карту в эмуляторе при запуске.
Карта будет перемещаться нормально, но маленький навигационный шар, похоже, смещен от угла.Не уверен, что с этим происходит.
Существует также хорошая статья о том, как заставить карту работать в Взлом Silverlight
Редактировать
Как упоминалось в других комментариях.Вероятно, это не будет работать на реальном оборудовании.Но поскольку реальное оборудование появится только через 6 месяцев, я полагаю, что возможность что-то настроить в эмуляторе лучше, чем ничего.
Другие советы
Элемент управления Bing maps для рабочего стола silverlight не поддерживается в Windows Phone.Возможно, вы захотите использовать BingMapsTask Бингмапстаска вместо этого.
Вы видите ошибку, потому что нет системы.Windows.Браузер.ссылка на dll для Windows phone.Если вы проверите "Добавить ссылку" в Visual Studio 2010 Express, доступной ссылки на System не будет.Windows.Browser.dll .
Вы также можете посмотреть на http://4square.codeplex.com/.Он использует Bing Maps API для непосредственного извлечения изображений карт и т.д., А затем работает с ними в WP7.