2015-10-11 2 views
0

С новым семейством Windows 10 Visual Studio начинает новый обработчик событий. MapElementClickEventArgs, который позволяет разработчику получать действия из MapElement, но я хочу дать разные действия для каждого выбранного типа MapElement. Пример: действие для MapIcons и другое действие для MapPolygonsКак получить тип отображения MapElement (MapControl) (универсальное приложение Windows 10)

Кто-то знает, как я не могу получить тип объекта, который прослушивается?

это модель этого обработчика:

private void MapControl1_MapElementClick(MapControl sender, MapElementClickEventArgs args) { }

ответ

0

В контрольной карте Windows 10 массив всех MapElements, которые пересекаются с тем, где вы щелкнули на карте будут возвращены. Если вы прокрутите каждый элемент, вы можете проверить, является ли он MapIcon или другим MapElement, используя ключевое слово «есть». Вот расширенная версия вашего кода:

private void MapControl1_MapElementClick(MapControl sender, MapElementClickEventArgs args) 
{ 
    foreach (var e in args.MapElements) 
    { 
     if (e is MapPolygon) 
     { 
      var poly = e as MapPolygon; 
      //Is MapPolygon 
     } 
     else if (e is MapPolyline) 
     { 
      var poly = e as MapPolyline; 
      //Is MapPolyline 
     } 
     else if (e is MapIcon) 
     { 
      var icon = e as MapIcon; 
      //Is MapIcon 
     } 
    } 
} 
Смежные вопросы