<?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 move layer up and down doesn't work in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/move-layer-up-and-down-doesn-t-work/m-p/526697#M14192</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I???m writing code with vba to build tool layer order (move layer up and down), switch from data view to layout view conversely, and turn on and off layer. I have 2 layers named river and lake.&amp;nbsp; What I want is in data view: the position of layer (0) is river and lake is invisible. And in layout view: the position of layer (0) is lake and river is invisible. The result is layer only move one time every after opening file mxd, whatever the selected layer is, the 2nd run and so on only switching and turning on or off layer. And surprisingly, although the layer lake is invisible but I can see in layout view.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Below are my code and no error. Could anyone please tell me where the mistake is? &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Yosie&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Private Sub MoveLayerDown_Click()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pSelLayer As ILayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pSelLayer = pDoc.SelectedLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pMap As IMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMap = pDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim i As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim layerIndex As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For i = 0 To pMap.LayerCount - 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pMap.Layer(i).Name = pSelLayer.Name Then&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layerIndex = i&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Next i&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;pMap.MoveLayer pSelLayer, layerIndex + 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Call View&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Call OnOff&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;End Sub&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Private Sub MoveLayerUp_Click()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pSelLayer As ILayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pSelLayer = pDoc.SelectedLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pMap As IMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMap = pDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim i As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim layerIndex As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For i = 0 To pMap.LayerCount - 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pMap.Layer(i).Name = pSelLayer.Name Then&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layerIndex = i&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Next i&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;pMap.MoveLayer pSelLayer, layerIndex - 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Call View&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Call OnOff&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;End Sub&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Private Sub View()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pMap As IMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMap = pDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pLayer As ILayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If pMap.Layer(0).Name = "Soil" Then&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pDoc.activeView = pDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Else&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pDoc.activeView = pDoc.pageLayout&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;End If&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;End Sub&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Private Sub OnOff()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pMap As IMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMap = pDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;pMap.Layer(0).Visible = True&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pMap.Layer(1).Visible = False&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>Sat, 16 Oct 2010 09:46:34 GMT</pubDate>
    <dc:creator>yosiwidiyanto</dc:creator>
    <dc:date>2010-10-16T09:46:34Z</dc:date>
    <item>
      <title>move layer up and down doesn't work</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/move-layer-up-and-down-doesn-t-work/m-p/526697#M14192</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I???m writing code with vba to build tool layer order (move layer up and down), switch from data view to layout view conversely, and turn on and off layer. I have 2 layers named river and lake.&amp;nbsp; What I want is in data view: the position of layer (0) is river and lake is invisible. And in layout view: the position of layer (0) is lake and river is invisible. The result is layer only move one time every after opening file mxd, whatever the selected layer is, the 2nd run and so on only switching and turning on or off layer. And surprisingly, although the layer lake is invisible but I can see in layout view.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Below are my code and no error. Could anyone please tell me where the mistake is? &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Yosie&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Private Sub MoveLayerDown_Click()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pSelLayer As ILayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pSelLayer = pDoc.SelectedLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pMap As IMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMap = pDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim i As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim layerIndex As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For i = 0 To pMap.LayerCount - 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pMap.Layer(i).Name = pSelLayer.Name Then&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layerIndex = i&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Next i&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;pMap.MoveLayer pSelLayer, layerIndex + 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Call View&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Call OnOff&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;End Sub&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Private Sub MoveLayerUp_Click()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pSelLayer As ILayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pSelLayer = pDoc.SelectedLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pMap As IMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMap = pDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim i As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim layerIndex As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For i = 0 To pMap.LayerCount - 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pMap.Layer(i).Name = pSelLayer.Name Then&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layerIndex = i&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Next i&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;pMap.MoveLayer pSelLayer, layerIndex - 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Call View&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Call OnOff&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;End Sub&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Private Sub View()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pMap As IMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMap = pDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pLayer As ILayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If pMap.Layer(0).Name = "Soil" Then&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pDoc.activeView = pDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Else&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pDoc.activeView = pDoc.pageLayout&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;End If&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;End Sub&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Private Sub OnOff()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pMap As IMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMap = pDoc.FocusMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;pMap.Layer(0).Visible = True&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pMap.Layer(1).Visible = False&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>Sat, 16 Oct 2010 09:46:34 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/move-layer-up-and-down-doesn-t-work/m-p/526697#M14192</guid>
      <dc:creator>yosiwidiyanto</dc:creator>
      <dc:date>2010-10-16T09:46:34Z</dc:date>
    </item>
  </channel>
</rss>

