У меня есть такой класс модели:
public class MapModel
{
public Field[] Fields { get; set; }
}
public class Field
{
public int Id { get; set; }
public string Name { get; set; }
public Node[] Nodes { get; set; }
public string Icon { get; set; }
}
public class Node
{
public float Long { get; set; }
public float Lat { get; set; }
}
В моей модели представления я вызываю сервис для получения картографических данных и ObservableCollection, например:
public ObservableCollection<Field> FieldsCollection { get; set; } = new ObservableCollection<Field>();
var mapData = await MapService.GetMapData(token, "sr");
foreach (var md in mapData.Fields)
{
FieldsCollection.Add(md);
PinIcon = Icon;
}
Теперь я пытаюсь установить значения Long и Lat из узла для положения Pin на карте ...
public void LoadMapTab()
{
foreach (var item in FieldsCollection)
{
var pin = new Pin
{
Label = item.Name,
Position = new Position(/* SET VALUES FROM NODE LONG AND LAT*/),
Icon = BitmapDescriptorFactory.FromBundle(PinIcon)
};
_map.Pins.Add(pin);
Device.StartTimer(TimeSpan.FromMilliseconds(500), () =>
{
_map.MoveToRegion(MapSpan.FromCenterAndRadius(new Position(/* SET VALUES FROM NODE LONG AND LAT*/),
Distance.FromKilometers(8)));
return false;
});
}
}
Итак, мой вопрос: как получить доступ к значениям Long
и Lat
и установить их в
Position = new Position(.......)