Después de una pequeña discusión sobre la beta del control de mapas de Bing para Windows 8 Metro Store C#, tenemos la nueva versión beta RTM que permite utilizar el MapItemsControls para definir el template de los pushpin y enlazarlo con nuestra vista sin ningún problema.
<Maps:Map x:Name=»MyMap» Margin=»0″>
<Maps:MapItemsControl x:Name=»Items» ItemsSource=»{Binding Elementos}» Height=»272″ Width=»314″>
<Maps:MapItemsControl.ItemTemplate>
<DataTemplate>
<Maps:Pushpin Text=»{Binding Name}»>
<Maps:MapLayer.Position>
<Maps:Location Latitude=»{Binding Latitude}» Longitude=»{Binding Longitude}» />
</Maps:MapLayer.Position>
</Maps:Pushpin>
</DataTemplate>
</Maps:MapItemsControl.ItemTemplate>
</Maps:MapItemsControl>
</Maps:Map>
Con diferencia a los que ya han utilizado la versión de Silverlight o de Windows Phone, para establecer la posición del Template debemos utilizar un MapLayer con su Location, con lo que nos permite utilizar cualquier control, por ejemplo StackPanel o Grid, y prescindir de Pushpin, y así poder aplicar estilos.
<DataTemplate>
<StackPanel>
<TextBlock Text=»{Binding Name}» />
<TextBlock Text=»{Binding Id}» />
<Maps:MapLayer.Position>
<Maps:Location Latitude=»{Binding Latitude}» Longitude=»{Binding Longitude}» />
</Maps:MapLayer.Position>
</StackPanel>
</DataTemplate>
Cuidado con intentar enlazar alguna otra propiedad, como ZoomLevel o Center, que, según nos cuentan, están limitados por problemas de rendimiento y no se pueden enlazar. Al carajo nuestro MVVM y tendremos que hacer un mixto, aunque es un adelanto tener el binding de los elementos a mostrar en el mapa porque lo de tener un foreach para pintarlos no me terminaba de convencer.
Para los que actualicen a esta nueva versión, hay que tener en cuenta que sólo funciona en la versión RTM de Windows 8.
Saludos a todos…
Bueno, parece que el becario de MS trabajó medio día :oP Ahora toca aplicar esta actualización
Lo que no me acaba de convencer de la versión es el cartel a Pantalla Completa poniendo BETA… como para ir a hacer una Demo… 🙁 , ya sabemos que es Beta pero podían ser un poco mas discretos, a ver si el Becario como dice Santiago se estira 10 minutos más y pone un cartel más pequeño… en una esquinita XD
Un poquito exagerado si que es 😛 deja que el becario mejore el rendimiento, entre otras cosas, y ya quitaré el cartel pesado.
Otro año toca, entramos en el 2013 sobreponiéndonos a las predicciones Mayas del fin del