<?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 Re: Layer List recursion in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/layer-list-recursion/m-p/117451#M3071</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;This is definetly version:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Sub a()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim s As String&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pLayer As ILayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim a As String&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMxDoc As IMxDocument&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pMxDoc = Application.Document&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMap As iMap&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pMap = pMxDoc.FocusMap&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim b As String&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; b = pMap.name + ":"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pEnumLayer As IEnumLayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pId As New uid&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pparentlayer As ILayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim kolekcia As New Collection&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim out As Variant&lt;BR /&gt;&amp;nbsp; Set pEnumLayer = pMap.LAyers&lt;BR /&gt;&amp;nbsp; Set pLayer = pEnumLayer.Next&lt;BR /&gt;Do Until pLayer Is Nothing&lt;BR /&gt;&amp;nbsp; Set pparentlayer = GetParent(pMxDoc.FocusMap, _&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pLayer)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not pparentlayer Is Nothing Then&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a = a + pparentlayer.name + ":"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s = b + a + pLayer.name&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out = s &amp;amp; Chr(13)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; kolekcia.Add out&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pLayer = pEnumLayer.Next&lt;BR /&gt;Loop&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; For Each out In kolekcia&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List = List &amp;amp; out&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next&lt;BR /&gt;MsgBox b &amp;amp; Chr(13) &amp;amp; List&lt;BR /&gt;End Sub&lt;BR /&gt;Function GetParent(pMap As iMap, alayer As ILayer) As ILayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pMap.LayerCount = 0 Then Exit Function&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pUID As New uid&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pUID.value = "{EDAD6644-1810-11D1-86AE-0000F8751720}"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pEnumLayer As IEnumLayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pEnumLayer = pMap.LAyers(pUID, True)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pCLayer As ICompositeLayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pCLayer = pEnumLayer.Next&lt;BR /&gt;Do Until pCLayer Is Nothing&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim k As Long&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For k = 0 To pCLayer.Count - 1&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pCLayer.layer(l) Is alayer Then&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set GetParent = pCLayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next k&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pCLayer = pEnumLayer.Next&lt;BR /&gt;Loop&lt;BR /&gt;End Function&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 05 Aug 2010 06:12:30 GMT</pubDate>
    <dc:creator>DanielTuracek</dc:creator>
    <dc:date>2010-08-05T06:12:30Z</dc:date>
    <item>
      <title>Layer List recursion</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/layer-list-recursion/m-p/117448#M3068</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have this code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;&lt;BR /&gt;Sub zoznamvrstiev()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pmxdoc As IMxDocument&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMap As iMap&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pFeatureLayer As IFeatureLayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pFeatureClass As IFeatureClass&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pmxdoc = ThisDocument&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pMap = pmxdoc.FocusMap&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pEnumLayer As IEnumLayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pId As New uid&lt;BR /&gt;&lt;BR /&gt;Dim a As String&lt;BR /&gt;a = pMap.name &amp;amp; ":"&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim b As String&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim player As ILayer&lt;BR /&gt;Set pMap = pmxdoc.FocusMap&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pId.value = "{34C20002-4D3C-11D0-92D8-00805F7C28B0}" ' = ILayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'pId.value = "{BA119BC4-939A-11D2-A2F4-080009B6F22B}" ' = iComposite&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'pId = "{E156D7E5-22AF-11D3-9F99-00C04F6BC78E}" ' = Igeofeaturelayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pEnumLayer = pMap.LAyers(pId, True)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pEnumLayer.Reset&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set player = pEnumLayer.Next&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Do Until player Is Nothing&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; b = b + player.name + ":"&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim colection As New Collection&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim out As Variant&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim c As String&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; c = a + b + Chr(13)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; out = c&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; colection.Add out&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set player = pEnumLayer.Next&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;Loop&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; For Each out In colection&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; List = List &amp;amp; out&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox a + Chr(13) + List&lt;BR /&gt;&lt;BR /&gt;End Sub&lt;BR /&gt;'Private Function Rekursia(player As ILayer)&lt;BR /&gt;'&amp;nbsp; Dim pFeatureLayer As IFeatureLayer&lt;BR /&gt;'&amp;nbsp; Dim pGroup As IGroupLayer&lt;BR /&gt;'&amp;nbsp; Dim pComp As ICompositeLayer&lt;BR /&gt;'&amp;nbsp; Dim i As Long&lt;BR /&gt;'&amp;nbsp; Dim pMap As iMap&lt;BR /&gt;'&amp;nbsp; Dim pmxdoc As IMxDocument&lt;BR /&gt;'&amp;nbsp; Set pmxdoc = ThisDocument&lt;BR /&gt;'&amp;nbsp; Set pMap = pmxdoc.FocusMap&lt;BR /&gt;'&lt;BR /&gt;'&amp;nbsp; 'Dim i As Integer&lt;BR /&gt;'&amp;nbsp; If TypeOf player Is IGroupLayer Then&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pComp = player&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp; For i = 0 To pComp.Count - 1&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Rekursia pComp.Layer(i)&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'MsgBox pComp.Layer(i).name&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp; Next i&lt;BR /&gt;'&lt;BR /&gt;'&amp;nbsp; Else&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp; If (TypeOf player Is IGeoFeatureLayer) Then&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pFeatureLayer = player&amp;nbsp; 'Pre FeatureLayer&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For i = 0 To pMap.LayerCount - 1&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Rekursia pMap.Layer(i)&lt;BR /&gt;'&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next i&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'MsgBox pFeatureLayer.name&lt;BR /&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR /&gt;'&lt;BR /&gt;'&amp;nbsp; End If&lt;BR /&gt;'MsgBox player.name&lt;BR /&gt;'End Function&lt;BR /&gt;&lt;BR /&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Its make a list of layers.But its make mistakes. I dont know how to set up the code in way to do what i want.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Its repeating the layername and i dont know why.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Somebody told me that i must do that by recursion.But i dont know how.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;In my code is Recursion Function only for your help. I somebody can help me , ill be very thankfull.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Jul 2010 12:48:53 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/layer-list-recursion/m-p/117448#M3068</guid>
      <dc:creator>DanielTuracek</dc:creator>
      <dc:date>2010-07-20T12:48:53Z</dc:date>
    </item>
    <item>
      <title>Re: Layer List recursion</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/layer-list-recursion/m-p/117449#M3069</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I altered your code and the result is the attached screen shot is the result.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Sub zoznamvrstiev()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pmxdoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pMap As IMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pFeatureLayer As IFeatureLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pFeatureClass As IFeatureClass&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pmxdoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMap = pmxdoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pEnumLayer As IEnumLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pId As New UID&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim a As String&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;a = pMap.name &amp;amp; ":"&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim b As String&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim player As ILayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMap = pmxdoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pId.Value = "{34C20002-4D3C-11D0-92D8-00805F7C28B0}" ' = ILayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;'pId.value = "{BA119BC4-939A-11D2-A2F4-080009B6F22B}" ' = iComposite&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;'pId = "{E156D7E5-22AF-11D3-9F99-00C04F6BC78E}" ' = Igeofeaturelayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pEnumLayer = pMap.Layers(pId, True)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pEnumLayer.Reset&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set player = pEnumLayer.Next&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Do Until player Is Nothing&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;b = player.name&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim colection As New Collection&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim out As Variant&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim c As String&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;c = a + b + Chr(13)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;out = c&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;colection.Add out&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set player = pEnumLayer.Next&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Loop&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For Each out In colection&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;List = List &amp;amp; out&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Next&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;MsgBox a + Chr(13) + List&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;End Sub&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Jul 2010 14:17:27 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/layer-list-recursion/m-p/117449#M3069</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2010-07-20T14:17:27Z</dc:date>
    </item>
    <item>
      <title>Re: Layer List recursion</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/layer-list-recursion/m-p/117450#M3070</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thank you for your reply&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;but i need this row &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;b = b + player.name&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;its important , because i need all way of layer in TOC. Its better to say that i need copy of treeview in some way.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;but thank&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Jul 2010 05:21:03 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/layer-list-recursion/m-p/117450#M3070</guid>
      <dc:creator>DanielTuracek</dc:creator>
      <dc:date>2010-07-21T05:21:03Z</dc:date>
    </item>
    <item>
      <title>Re: Layer List recursion</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/layer-list-recursion/m-p/117451#M3071</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;This is definetly version:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Sub a()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim s As String&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pLayer As ILayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim a As String&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMxDoc As IMxDocument&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pMxDoc = Application.Document&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMap As iMap&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pMap = pMxDoc.FocusMap&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim b As String&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; b = pMap.name + ":"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pEnumLayer As IEnumLayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pId As New uid&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pparentlayer As ILayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim kolekcia As New Collection&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim out As Variant&lt;BR /&gt;&amp;nbsp; Set pEnumLayer = pMap.LAyers&lt;BR /&gt;&amp;nbsp; Set pLayer = pEnumLayer.Next&lt;BR /&gt;Do Until pLayer Is Nothing&lt;BR /&gt;&amp;nbsp; Set pparentlayer = GetParent(pMxDoc.FocusMap, _&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pLayer)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not pparentlayer Is Nothing Then&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a = a + pparentlayer.name + ":"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s = b + a + pLayer.name&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out = s &amp;amp; Chr(13)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; kolekcia.Add out&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pLayer = pEnumLayer.Next&lt;BR /&gt;Loop&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; For Each out In kolekcia&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List = List &amp;amp; out&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next&lt;BR /&gt;MsgBox b &amp;amp; Chr(13) &amp;amp; List&lt;BR /&gt;End Sub&lt;BR /&gt;Function GetParent(pMap As iMap, alayer As ILayer) As ILayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pMap.LayerCount = 0 Then Exit Function&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pUID As New uid&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pUID.value = "{EDAD6644-1810-11D1-86AE-0000F8751720}"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pEnumLayer As IEnumLayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pEnumLayer = pMap.LAyers(pUID, True)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pCLayer As ICompositeLayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pCLayer = pEnumLayer.Next&lt;BR /&gt;Do Until pCLayer Is Nothing&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim k As Long&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For k = 0 To pCLayer.Count - 1&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pCLayer.layer(l) Is alayer Then&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set GetParent = pCLayer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next k&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pCLayer = pEnumLayer.Next&lt;BR /&gt;Loop&lt;BR /&gt;End Function&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Aug 2010 06:12:30 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/layer-list-recursion/m-p/117451#M3071</guid>
      <dc:creator>DanielTuracek</dc:creator>
      <dc:date>2010-08-05T06:12:30Z</dc:date>
    </item>
  </channel>
</rss>

