<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Zooming to layer with definition query in a nested group in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/zooming-to-layer-with-definition-query-in-a-nested/m-p/397804#M10627</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am trying to create a button on a toolbar that will add a layer files that contain layers that have definition queries and are in a nested group. Using some code snippets I found I was able to find my layer in the nested group and then have it zoom to the layer's extent with the definition query. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am very new to programming and arcobjects so I don't think I am referencing the layer correctly in&amp;nbsp; the code snippet that zooms to the layer's extent with the definition query.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;below is the code i have so far. The following is a link where I got the function to get the layer in the nested group: &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://forums.esri.com/Thread.asp?c=93&amp;amp;f=992&amp;amp;t=99138"&gt;http://forums.esri.com/Thread.asp?c=93&amp;amp;f=992&amp;amp;t=99138&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When I execute the code it still zooms to the full extent of the layer and not the extent based on the definition query.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Does anyone know what I am doing wrong?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMxDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pMxDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMap As IMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pMap = pMxDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim LayerName As String&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LayerName = "Rooms"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pLayer As ILayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;'this is the function I am using to get the layer i want in the nested group&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pLayer = GetLayerByName(pMap, LayerName, True)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;'I think there is where I am referencing the layer incorrectly&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim featureLayer As IFeatureLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set featureLayer = pLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim geoDataset As IGeoDataset&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set geoDataset = featureLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim activeView As IActiveView&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set activeView = pMxDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim geoFeatureLayer As IGeoFeatureLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set geoFeatureLayer = featureLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim enumGeometryBind As IEnumGeometryBind&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set enumGeometryBind = New EnumFeatureGeometry&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; enumGeometryBind.BindGeometrySource Nothing, geoFeatureLayer.DisplayFeatureClass&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim geoFactory As IGeometryFactory&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set geoFactory = New GeometryEnvironment&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim geometry As IGeometry&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set geometry = geoFactory.CreateGeometryFromEnumerator(enumGeometryBind)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; activeView.Extent = geometry.Envelope&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; activeView.Refresh&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 01 Apr 2011 01:03:55 GMT</pubDate>
    <dc:creator>AdrianFitzgerald</dc:creator>
    <dc:date>2011-04-01T01:03:55Z</dc:date>
    <item>
      <title>Zooming to layer with definition query in a nested group</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/zooming-to-layer-with-definition-query-in-a-nested/m-p/397804#M10627</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am trying to create a button on a toolbar that will add a layer files that contain layers that have definition queries and are in a nested group. Using some code snippets I found I was able to find my layer in the nested group and then have it zoom to the layer's extent with the definition query. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am very new to programming and arcobjects so I don't think I am referencing the layer correctly in&amp;nbsp; the code snippet that zooms to the layer's extent with the definition query.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;below is the code i have so far. The following is a link where I got the function to get the layer in the nested group: &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://forums.esri.com/Thread.asp?c=93&amp;amp;f=992&amp;amp;t=99138"&gt;http://forums.esri.com/Thread.asp?c=93&amp;amp;f=992&amp;amp;t=99138&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When I execute the code it still zooms to the full extent of the layer and not the extent based on the definition query.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Does anyone know what I am doing wrong?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMxDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pMxDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMap As IMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pMap = pMxDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim LayerName As String&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LayerName = "Rooms"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pLayer As ILayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;'this is the function I am using to get the layer i want in the nested group&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pLayer = GetLayerByName(pMap, LayerName, True)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;'I think there is where I am referencing the layer incorrectly&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim featureLayer As IFeatureLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set featureLayer = pLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim geoDataset As IGeoDataset&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set geoDataset = featureLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim activeView As IActiveView&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set activeView = pMxDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim geoFeatureLayer As IGeoFeatureLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set geoFeatureLayer = featureLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim enumGeometryBind As IEnumGeometryBind&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set enumGeometryBind = New EnumFeatureGeometry&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; enumGeometryBind.BindGeometrySource Nothing, geoFeatureLayer.DisplayFeatureClass&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim geoFactory As IGeometryFactory&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set geoFactory = New GeometryEnvironment&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim geometry As IGeometry&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set geometry = geoFactory.CreateGeometryFromEnumerator(enumGeometryBind)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; activeView.Extent = geometry.Envelope&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; activeView.Refresh&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Apr 2011 01:03:55 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/zooming-to-layer-with-definition-query-in-a-nested/m-p/397804#M10627</guid>
      <dc:creator>AdrianFitzgerald</dc:creator>
      <dc:date>2011-04-01T01:03:55Z</dc:date>
    </item>
    <item>
      <title>Re: Zooming to layer with definition query in a nested group</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/zooming-to-layer-with-definition-query-in-a-nested/m-p/397805#M10628</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;You could create a selection from the GeoFeatureLayer:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt; 
Dim geoFeatureLayer As IGeoFeatureLayer
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set geoFeatureLayer = featureLayer
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim featCur As IFeatureCursor
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set featCur = geoFeatureLayer.Search(Nothing, True)
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim feat As IFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set feat = featCur.NextFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim featSel As IFeatureSelection
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set featSel = featureLayer
&amp;nbsp;&amp;nbsp;&amp;nbsp; If featSel.SelectionSet.Count &amp;gt; 0 Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; featSel.Clear
&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; Do Until feat Is Nothing
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; featSel.Add feat
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set feat = featCur.NextFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim ss As ISelectionSet
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set ss = featSel.SelectionSet
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pEnumGeom As IEnumGeometry
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pEnumGeomBind As IEnumGeometryBind
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pEnumGeom = New EnumFeatureGeometry
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pEnumGeomBind = pEnumGeom
&amp;nbsp;&amp;nbsp;&amp;nbsp; ''pEnumGeomBind.BindGeometrySource Nothing, featCur
&amp;nbsp;&amp;nbsp;&amp;nbsp; pEnumGeomBind.BindGeometrySource Nothing, ss
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pGeomFactory As IGeometryFactory
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pGeomFactory = New GeometryEnvironment
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pGeom As IGeometry
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pGeom = pGeomFactory.CreateGeometryFromEnumerator(pEnumGeom)
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; activeView.Extent = pGeom.Envelope
&amp;nbsp;&amp;nbsp;&amp;nbsp; activeView.Refresh
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 18:10:57 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/zooming-to-layer-with-definition-query-in-a-nested/m-p/397805#M10628</guid>
      <dc:creator>JeffMatson</dc:creator>
      <dc:date>2021-12-11T18:10:57Z</dc:date>
    </item>
    <item>
      <title>Re: Zooming to layer with definition query in a nested group</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/zooming-to-layer-with-definition-query-in-a-nested/m-p/397806#M10629</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;That work great. Thanks for your help.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-Adrian&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 Apr 2011 01:33:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/zooming-to-layer-with-definition-query-in-a-nested/m-p/397806#M10629</guid>
      <dc:creator>AdrianFitzgerald</dc:creator>
      <dc:date>2011-04-12T01:33:29Z</dc:date>
    </item>
  </channel>
</rss>

