Update 10.10.2017. The saga, Windows Phone, ends – nice review of the years here
Great article in Czech Language by Martin Suchan on Windows Phone 8.1 development two great pictures (most likely he made) I am reposting here showing fragmentation of Windows Phone development. Universal apps introduced in Build 2014 conference means something totally different of what I have used to work with on iOS.
I agree with this blog“Learning how to use Maps in the .Net world is a never ending business. There are major API-differences between WPF, Silverlight, Windows 8 Store apps and Windows Phone and even between WP7 and WP8. Windows Phone 8.1 makes no differ and there are many breaking changes here”
my tests of previous WMS overlays are listed here:
I have put together Visual studio 2013, Update2 Solution that does WMS overlay in Windows 8.1 and Windows Phone 8.1 called WMSonWin81 – here on github
Video of Windows Phone 8.1 below, used “Project My Screen App” to project the app on desktop and record.
WMSonWin81
WMSonWin81using universal app for Windows Store and Windows Phone Store apps Both apps do not share same namespace for map nor component. Windows Store is using Bing Map while Windows Phone is using map control as part of the WP8.1 framework located in Windows.UI.Xaml.Controls.Maps
there are main 2 projects:
WMSOnWin.Windows
Sample code of using WMS source on Windows Store Apps using Bing Maps:
MapTileLayer mapTileLayer = new MapTileLayer();
mapTileLayer.GetTileUri += delegate(object sender, GetTileUriEventArgs e) {
Rect mercBounds = GlobalMercator.TileBounds(new Tile(e.X, e.Y), e.LevelOfDetail);
e.Uri = new Uri(string.Format(_wmsUrl, mercBounds.Left,
Math.Abs(mercBounds.Bottom), mercBounds.Right, Math.Abs(mercBounds.Top)));
};
Sample code of using WMS on Windows Phone Store App using Windows.UI.Xaml.Controls.Maps; core class to look is HttpMapTileDataSource
HttpMapTileDataSource dataSource = new HttpMapTileDataSource();
dataSource.UriRequested +=
new TypedEventHandler<HttpMapTileDataSource, MapTileUriRequestedEventArgs>(
(source, args) => {
Rect mercBounds = GlobalMercator.TileBounds(
new Tile(args.X, args.Y), args.ZoomLevel);
args.Request.Uri = new Uri(string.Format(_wmsUrl, mercBounds.Left,
Math.Abs(mercBounds.Bottom), mercBounds.Right, Math.Abs(mercBounds.Top))); ;
});
_map.TileSources.Add(new MapTileSource(dataSource));
Tested on Windows 8.1 64bit, and Lumia 810, Windows Phone 8.1
enjoy.
Credits: got help here to repair problems with USB connection to my Lumia 810 (had to uninstall USB driver for the phone in device manager) and here to get WP8.1 on Lumia 810
What it takes to transfer from Microsoft .NET to Apple iOS developer ?
Update 2015: more longer and similar story/explanation found here
So this was me ‘before’ with all my friends: Windows, C#, .NET, Visual Studio, MSDN :
transcript:
– easy ‘managed’ life,
– can smile and make ceremony
– implicit friends and friends of friends you can’t get rid of them
– shallow water, no deep dive
– few freezes
– slightly detuned, but good enough for many
– moon shots
…and me ‘after’ passing through the fire of iOS, Objective-C, Cocoa Touch, XCode, Documentation, Mac, Certificates, AppStore
transcript:
– different game, different rules
– lot of explosive material (resources)
– focused, not distracted by ‘friends’
– intelligence and luck needed
– dangerous and too explicit
– very rewarding