Skip to main content

MapControl.ZoomToFitLayerItems(Double) Method

Zooms a map to fit items contained in all layers of the map.

Namespace: DevExpress.Xpf.Map

Assembly: DevExpress.Xpf.Map.v24.2.dll

NuGet Package: DevExpress.Wpf.Map

Declaration

public void ZoomToFitLayerItems(
    double paddingFactor = 0.15
)

Optional Parameters

Name Type Default Description
paddingFactor Double 0.15

A Double object, which tunes the border size around visible map items.

Remarks

The ZoomToFitLayerItems method works as follows:

  • Calculates a bounding box around map items contained in map layers.

    WpfMapControl_ZoomToFit_BoundingBox

  • Zooms the map to fit the box.

    The padding factor is applied to the larger dimension of the bounding box that contains visible items.

    The following image shows an instance of a horizontal dimension that is larger than the vertical (“PF” means “Padding Factor” on images):

    WpfMapControl_ZoomToFit_VerticalFitting

    When the vertical dimension is larger than the horizontal, the zoom appears as follows:

    WpfMapControl_ZoomToFit_HorizontalFitting

    Note that the padding factor is divided by two for each side of the region.

The following image shows a map with the padding factor parameter set at 0.3:

WpfMapControl_ZoomToFit_NumericExample

map.ZoomToFitLayerItems(0.3);

Example

To zoom in a map at application launch, call the ZoomToFitLayerItems method in the LayerBase.DataLoaded event handler:

<dxm:VectorLayer x:Name="layer1" DataLoaded="VectorLayer_DataLoaded">
    <dxm:MapItemStorage>
        <dxm:MapRectangle Height="21" Width="30">
            <dxm:MapRectangle.Location>
                <dxm:GeoPoint Longitude="41.3" Latitude="-54.5"/>
            </dxm:MapRectangle.Location>
        </dxm:MapRectangle>
    </dxm:MapItemStorage>
</dxm:VectorLayer>

The DataLoaded event’s handler:

private void VectorLayer_DataLoaded(object sender, DataLoadedEventArgs e) {
    mapControl.ZoomToFitLayerItems(0.3);            
}
See Also