![]() |
This document is archived and information here might be outdated. Recommended version. |
| ArcObjects Help for .NET developers > ESRI.ArcGIS.Snippets > Snippets > Zoom to Active Layer in TOC Snippet (ArcObjects .NET 10.4 SDK) |
Zooms to the selected layer in the Table of Contents (TOC) associated with the active view.
///<summary>Zooms to the selected layer in the TOC associated with the active view.</summary>
///
///<param name="mxDocument">An IMxDocument interface</param>
///
///<remarks></remarks>
public void ZoomToActiveLayerInTOC(ESRI.ArcGIS.ArcMapUI.IMxDocument mxDocument)
{
if(mxDocument == null)
{
return;
}
ESRI.ArcGIS.Carto.IActiveView activeView=mxDocument.ActiveView;
// Get the TOC
ESRI.ArcGIS.ArcMapUI.IContentsView IContentsView=mxDocument.CurrentContentsView;
// Get the selected layer
System.Object selectedItem=IContentsView.SelectedItem;
if (!(selectedItem is ESRI.ArcGIS.Carto.ILayer))
{
return;
}
ESRI.ArcGIS.Carto.ILayer layer=selectedItem as ESRI.ArcGIS.Carto.ILayer;
// Zoom to the extent of the layer and refresh the map
activeView.Extent=layer.AreaOfInterest;
activeView.Refresh();
}
'''<summary>Zooms to the selected layer in the TOC associated with the active view.</summary>
'''
'''<param name="mxDocument">An IMxDocument interface</param>
'''
'''<remarks></remarks>
Public Sub ZoomToActiveLayerInTOC(ByVal mxDocument As ESRI.ArcGIS.ArcMapUI.IMxDocument)
If mxDocument Is Nothing Then
Return
End If
' Get the map
Dim activeView As ESRI.ArcGIS.Carto.IActiveView=mxDocument.ActiveView
' Get the TOC
Dim contentsView As ESRI.ArcGIS.ArcMapUI.IContentsView=mxDocument.CurrentContentsView
' Get the selected layer
Dim selectedItem As System.Object=contentsView.SelectedItem
If Not (TypeOf selectedItem Is ESRI.ArcGIS.Carto.ILayer) Then
Return
End If
Dim layer As ESRI.ArcGIS.Carto.ILayer=TryCast(selectedItem, ESRI.ArcGIS.Carto.ILayer) ' Dynamic Cast
' Zoom to the extent of the layer and refresh the map
activeView.Extent=layer.AreaOfInterest
activeView.Refresh()
End Sub