Thank you for the provided code snippet.
I am going to address your questions in order.
By default the MouseWheelMode - ZoomToPoint does not center the map on the point of the mouse. However, you can achieve this by setting the MouseDoubleClickMode
As for the ZoomLevel and MaxZoomLevel properties, I investigated this scenario thoroughly and what you have observed is the expected behavior. Please, allow me to elaborate:
Internally the RadMap keeps the ZoomLevel property within the bounds of the min and max zoom level through dependency property coercion
. This way the internal ZoomLevel of the map is kept within the required range and the control won't zoom outside that range. However, when you have bound the ZoomLevel property to a property in your view model, the binding gets updated before the dependency property is coerced. (In that specific case, the binding is updated to 20 and only after that the property is coerced to 19) You can check out the following topic, where this wpf behavior is discussed: Why does my data binding see the real value instead of the coerced value?
If you want to coerce the value of the bound property in your view model, you can implement some logic in the setter which keeps the ZoomLevel value between the min and max zoom levels.
Hope you find this helpful.
Get quickly onboarded and successful
with your Telerik and/or Kendo UI products with the Virtual Classroom free technical training, available to all active customers. Learn More.