This document is archived and information here might be outdated. Recommended version. |
ArcObjects Help for .NET developers > ESRI.ArcGIS.Snippets > Snippets > Do Identify Snippet (ArcObjects .NET 10.4 SDK) |
Performs an identify (via the Identify Dialog) on the layers in the Active View.
///<summary>Performs an identify (via the Identify Dialog) on the layers in the Active View.</summary> /// ///<param name="activeView">An IActiveView interface</param> ///<param name="x">An System.Int32 in device (screen) coordinates. Example: 300</param> ///<param name="y">An System.Int32 in device (screen) coordinates. Example: 100</param> /// ///<remarks></remarks> public void DoIdentify(ESRI.ArcGIS.Carto.IActiveView activeView, System.Int32 x, System.Int32 y) { if(activeView == null) { return; } ESRI.ArcGIS.Carto.IMap map=activeView.FocusMap; ESRI.ArcGIS.CartoUI.IIdentifyDialog identifyDialog=new ESRI.ArcGIS.CartoUI.IdentifyDialogClass(); identifyDialog.Map=map; //Clear the dialog on each mouse click identifyDialog.ClearLayers(); ESRI.ArcGIS.Display.IScreenDisplay screenDisplay=activeView.ScreenDisplay; ESRI.ArcGIS.Display.IDisplay display=screenDisplay; // Implicit Cast identifyDialog.Display=display; ESRI.ArcGIS.CartoUI.IIdentifyDialogProps identifyDialogProps=(ESRI.ArcGIS.CartoUI.IIdentifyDialogProps)identifyDialog; // Explicit Cast ESRI.ArcGIS.Carto.IEnumLayer enumLayer=identifyDialogProps.Layers; enumLayer.Reset(); ESRI.ArcGIS.Carto.ILayer layer=enumLayer.Next(); // while (!(layer == null)) { identifyDialog.AddLayerIdentifyPoint(layer, x, y); layer=enumLayer.Next(); } identifyDialog.Show(); }
'''<summary>Performs an identify (via the Identify Dialog) on the layers in the Active View.</summary> ''' '''<param name="activeView">An IActiveView interface</param> '''<param name="x">An System.Int32 in device (screen) coordinates. Example: 300</param> '''<param name="y">An System.Int32 in device (screen) coordinates. Example: 100</param> ''' '''<remarks></remarks> Public Sub DoIdentify(ByVal activeView As ESRI.ArcGIS.Carto.IActiveView, ByVal x As System.Int32, ByVal y As System.Int32) If activeView Is Nothing Then Return End If Dim map As ESRI.ArcGIS.Carto.IMap=activeView.FocusMap Dim identifyDialog As ESRI.ArcGIS.CartoUI.IIdentifyDialog=New ESRI.ArcGIS.CartoUI.IdentifyDialogClass identifyDialog.Map=map 'Clear the dialog on each mouse click identifyDialog.ClearLayers() Dim screenDisplay As ESRI.ArcGIS.Display.IScreenDisplay=activeView.ScreenDisplay Dim display As ESRI.ArcGIS.Display.IDisplay=screenDisplay ' Implicit Cast identifyDialog.Display=display Dim identifyDialogProps As ESRI.ArcGIS.CartoUI.IIdentifyDialogProps=CType(identifyDialog, ESRI.ArcGIS.CartoUI.IIdentifyDialogProps) ' Explicit Cast Dim enumLayer As ESRI.ArcGIS.Carto.IEnumLayer=identifyDialogProps.Layers enumLayer.Reset() Dim layer As ESRI.ArcGIS.Carto.ILayer=enumLayer.Next ' Do While Not (layer Is Nothing) identifyDialog.AddLayerIdentifyPoint(layer, x, y) layer=enumLayer.Next() Loop identifyDialog.Show() End Sub