We are working on an app where we persist the current viewport (x, y, scale) for the map. When the app is restarted we were going to call SetViewpoint(). The problem we encountered is that you cannot call SetViewpoint() until the map has been loaded or will an exception will be thrown.
There is a constructor for the map class that allows you to set the initial viewpoint but it takes level of detail not scale:
public Map(BasemapType basemapType, double latitude, double longitude, int levelOfDetail);
Yes we can subscribe to the Load event on the MapView and not call SetViewpoint() until then but it would be easier if we could use the Map constructor that accept the initial viewpoint. We get the current viewpoint by call GetCurrentViewpoint() which has the scale but not the level of detail.
Is there a way to get the current level of detail or convert the scale to level of detail?
If Esri is reading this how about adding constructor to map that also accepts scale.