<?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 Find correct layer in map in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306645#M7966</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;In a combobox i store all the names of layers that are in the TOC:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;water&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;buildings&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;buildings&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;As you can see there are 2 layers with the same name, but different definition queries: buildings.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;When user selects a layer in the combobox i perform an action on that layer. My routine 'selectLayerByName' fails when user selects the second building layer.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;What code do i need to find the correct layer?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[Edit] Or what extra information do i need to store in de combobox to find the correct layer?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Gr. Henk&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 02 Dec 2010 20:02:28 GMT</pubDate>
    <dc:creator>HenkZwols</dc:creator>
    <dc:date>2010-12-02T20:02:28Z</dc:date>
    <item>
      <title>Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306645#M7966</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;In a combobox i store all the names of layers that are in the TOC:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;water&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;buildings&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;buildings&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;As you can see there are 2 layers with the same name, but different definition queries: buildings.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;When user selects a layer in the combobox i perform an action on that layer. My routine 'selectLayerByName' fails when user selects the second building layer.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;What code do i need to find the correct layer?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[Edit] Or what extra information do i need to store in de combobox to find the correct layer?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Gr. Henk&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Dec 2010 20:02:28 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306645#M7966</guid>
      <dc:creator>HenkZwols</dc:creator>
      <dc:date>2010-12-02T20:02:28Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306646#M7967</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I supposed changing the name of the building layers to something that indicates the type of def query would be out of the question?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The only other way, is to find your layer by ID, and not change the order of the layers in the mxd.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Dec 2010 23:19:54 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306646#M7967</guid>
      <dc:creator>LeoDonahue</dc:creator>
      <dc:date>2010-12-02T23:19:54Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306647#M7968</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I was afraid for this answer and it happened. Renaming seems the only solution.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Dec 2010 06:22:04 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306647#M7968</guid>
      <dc:creator>HenkZwols</dc:creator>
      <dc:date>2010-12-03T06:22:04Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306648#M7969</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Once layer is renamed...there will be issue right ?Even we should not call it as an issue tooo....&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Dec 2010 07:21:27 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306648#M7969</guid>
      <dc:creator>Venkata_RaoTammineni</dc:creator>
      <dc:date>2010-12-03T07:21:27Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306649#M7970</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I was afraid for this answer and it happened. Renaming seems the only solution.&lt;BR /&gt;Thanks.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; Well, even if "you" can tell which layer is the right layer, how do the "users" know which layer they are choosing if both layers have the same name in the combo box?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Dec 2010 12:10:07 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306649#M7970</guid>
      <dc:creator>LeoDonahue</dc:creator>
      <dc:date>2010-12-03T12:10:07Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306650#M7971</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have dealt with a similar situation in .net (both vb and C#.)&amp;nbsp; The way I dealt with it was to build a list of IFeatureLayers (generic list (of IFeatureLayer).&amp;nbsp;&amp;nbsp; Then bind the list to combobox and set the display property to "Name".&amp;nbsp; This way your combobox doesn't contain a list of featurelayer name strings but a list of actual featurelayer objects.&amp;nbsp; When the user picks one the selecteditem is a feature layer not a string but the featurelayer so there is no need to find the layer by name.&amp;nbsp; Of course showing the user two items in a combo box with the same name is not very nice for the user.&amp;nbsp; But there are other solutions to that (showing the group and name, etc.)&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Dec 2010 12:29:01 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306650#M7971</guid>
      <dc:creator>AlexanderGray</dc:creator>
      <dc:date>2010-12-03T12:29:01Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306651#M7972</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Well, even if "you" can tell which layer is the right layer, how do the "users" know which layer they are choosing if both layers have the same name in the combo box?&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Good point!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Dec 2010 14:02:58 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306651#M7972</guid>
      <dc:creator>HenkZwols</dc:creator>
      <dc:date>2010-12-03T14:02:58Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306652#M7973</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I have dealt with a similar situation in .net (both vb and C#.)&amp;nbsp; The way I dealt with it was to build a list of IFeatureLayers (generic list (of IFeatureLayer).&amp;nbsp;&amp;nbsp; Then bind the list to combobox and set the display property to "Name".&amp;nbsp; This way your combobox doesn't contain a list of featurelayer name strings but a list of actual featurelayer objects.&amp;nbsp; When the user picks one the selecteditem is a feature layer not a string but the featurelayer so there is no need to find the layer by name.&amp;nbsp; Of course showing the user two items in a combo box with the same name is not very nice for the user.&amp;nbsp; But there are other solutions to that (showing the group and name, etc.)&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank for this tip!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I agree that showing two items with the same name is not nice.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Do you have other ideas for names without using groupnames? Something like "Buildings (1ste entry)", Buildings (2de entry) ?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Dec 2010 14:10:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306652#M7973</guid>
      <dc:creator>HenkZwols</dc:creator>
      <dc:date>2010-12-03T14:10:10Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306653#M7974</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;And what about selecting (hilite) the layer in the TOC that matches with the item user selects in the combobox?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Dec 2010 14:32:23 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306653#M7974</guid>
      <dc:creator>HenkZwols</dc:creator>
      <dc:date>2010-12-03T14:32:23Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306654#M7975</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Thank for this tip!&lt;BR /&gt;I agree that showing two items with the same name is not nice.&lt;BR /&gt;Do you have other ideas for names without using groupnames? Something like "Buildings (1ste entry)", Buildings (2de entry) ?&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Why don't you make names as by type Commercial building and residential or by size Large Constructions and Small Constructions&amp;nbsp; something like that ?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 06 Dec 2010 03:50:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306654#M7975</guid>
      <dc:creator>Venkata_RaoTammineni</dc:creator>
      <dc:date>2010-12-06T03:50:16Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306655#M7976</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Why don't you make names as by type Commercial building and residential or by size Large Constructions and Small Constructions&amp;nbsp; something like that ?&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I know, but it is up to the user of my tool what names he uses. My tool must be able to handle layers with equal names.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Dec 2010 19:25:09 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306655#M7976</guid>
      <dc:creator>HenkZwols</dc:creator>
      <dc:date>2010-12-07T19:25:09Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306656#M7977</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;This is an ESRI sample method for finding a layer in a map.&amp;nbsp; The sample is Java based:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Using the sample below, when you have two layers with the same name in a map, will the second layer with the same name ever get selected?&amp;nbsp; No.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You need a way to distinguish between the two layers with the same name, when you are creating your layer.&amp;nbsp; The only way to to do this would be to organize your map with the layers in a defined order (and not change the order), and use the index of the layer in the map.&amp;nbsp; Then you can add the same layer name to your combo box and use the index associated with the two layers that have the same name.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Luckily for you, you can get the map layer by ID, without using a loop.&lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://resources.esri.com/help/9.3/arcgisserver/adf/java/help/api/arcobjects/com/esri/arcgis/carto/MapServer.html#getLayer%28java.lang.String,%20int%29" rel="nofollow noopener noreferrer" target="_blank"&gt;http://resources.esri.com/help/9.3/arcgisserver/adf/java/help/api/arcobjects/com/esri/arcgis/carto/MapServer.html#getLayer%28java.lang.String,%20int%29&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public FeatureLayer getLayerByName(String layerName, com.esri.arcgis.carto.Map map) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FeatureLayer layer = null;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; map.getLayerCount(); i++) {
&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; if (map.getLayer(i).getName().equalsIgnoreCase(layerName)) {
&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; layer = (FeatureLayer) map.getLayer(i);
&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; break;
&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;&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; } catch (AutomationException ae) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ae.printStackTrace();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (IOException e) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();
&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; return layer;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 14:40:51 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306656#M7977</guid>
      <dc:creator>LeoDonahue</dc:creator>
      <dc:date>2021-12-11T14:40:51Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306657#M7978</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I know, but it is up to the user of my tool what names he uses. My tool must be able to handle layers with equal names.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;See...handling same layers name is not an issue...only thing is how user can feel good to use...what he suppose to select if he wants to see the building or something...why he suppose to check all building layers ?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 08 Dec 2010 05:09:11 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306657#M7978</guid>
      <dc:creator>Venkata_RaoTammineni</dc:creator>
      <dc:date>2010-12-08T05:09:11Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306658#M7979</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Here's an idea to make certain layer names in the TOC are unique and correspond to the items found in your ComboBox.&amp;nbsp; Honestly, I don't see a "good" scenario where I would allow the user to have duplicate layer names loaded, even though they are the same Dataset.Name from the datasource. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If this isn't a good solution, perhaps you could utilize some of it to fit your needs.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This could be added to the Load event of the Form:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;Dim theListOfLayers As List(Of String) = GetLayerList()

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pDoc = m_pApp.Document
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pMap = pDoc.FocusMap

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For l = 0 To pMap.LayerCount - 1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For x = 0 To theListOfLayers.Count - 1
&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; Dim indxOrig As Integer = theListOfLayers.IndexOf(theListOfLayers(x).Trim)
&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; Dim indx As Integer = theListOfLayers.LastIndexOf(theListOfLayers(x).Trim)
&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; If indxOrig &amp;lt;&amp;gt; indx Then
&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; pMap.Layer(l).Name = theListOfLayers(x).Trim &amp;amp; "2"
&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; theListOfLayers(x) = theListOfLayers(x).Trim &amp;amp; "2"
&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; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Exit For
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'update the TOC
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pDoc.UpdateContents()

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'add the list of layernames to the ComboBox
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cboLayerList.DataSource = theListOfLayers&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Add this private function to the form to build the List(Of String) of Layer names loaded in the TOC:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;Private Function GetLayerList() As List(Of String)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim LayerList As New List(Of String)

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pDoc As ESRI.ArcGIS.ArcMapUI.IMxDocument
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMap As ESRI.ArcGIS.Carto.IMap

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pDoc = m_pApp.Document
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pMap = pDoc.FocusMap

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For i = 0 To pMap.LayerCount - 1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LayerList.Add(pMap.Layer(i).Name)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return LayerList

&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 14:40:53 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306658#M7979</guid>
      <dc:creator>JamesCrandall</dc:creator>
      <dc:date>2021-12-11T14:40:53Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306659#M7980</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;See...handling same layers name is not an issue...only thing is how user can feel good to use...what he suppose to select if he wants to see the building or something...why he suppose to check all building layers ?&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;It's a very smart user &lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt; . He adds two layers with the same name en applies two different definition queries. For the moment its easy to remember which layers and what queries he added while testing his code. When he selects a layer in de combobox the form shows the definition queries he applied and so he knows what layer to select. He selects the second layer and hits the commandbutton to perform an action on that layer. Now he is wondering why the tool is processing the wrong features. It takes 10 seconds to find out what the problem is: the code is using only the name of the layer and finds the first layer.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;So he thinks of a solution. There must be a another way to identify a layer, but he can't figure it out and goes to this forum to find an answer to his problem.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;He decides to change the code so that it's checking for duplicate names in the TOC and renames them without asking:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;Sub getlayers()
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMxDocument As IMxDocument
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pMap As IMap
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pMxDocument = ThisDocument
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pMap = pMxDocument.FocusMap
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim Player As ILayer
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pEnumLayers As IEnumLayer
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pFeatureLayer As IFeatureLayer
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pId As New UID
&amp;nbsp;&amp;nbsp;&amp;nbsp; pId = "{E156D7E5-22AF-11D3-9F99-00C04F6BC78E}"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Find only IGeoFeatureLayers
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pEnumLayers = pMap.Layers(pId, True)

&amp;nbsp;&amp;nbsp;&amp;nbsp; If pEnumLayers Is Nothing Then Exit Sub

&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim newName As String
&amp;nbsp;&amp;nbsp;&amp;nbsp; Randomize
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set Player = pEnumLayers.Next
&amp;nbsp;&amp;nbsp;&amp;nbsp; Do While Not Player Is Nothing
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Player.Valid Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set pFeatureLayer = Player

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If nameInList(ComboBoxLayers, pFeatureLayer.name) Then
&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; newName = pFeatureLayer.name &amp;amp; Int(Rnd * 100)
&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; MsgBox "Layer " &amp;amp; pFeatureLayer.name &amp;amp; " renamed to " &amp;amp; newName, vbInformation
&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; pFeatureLayer.name = newName
&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; pMxDocument.CurrentContentsView.Refresh 1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ComboBoxLayers.AddItem pFeatureLayer.name
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp; Set Player = pEnumLayers.Next
&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop
End Sub

Function nameInList(ComboBoxIn As ComboBox, name As String) As Boolean
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim i As Long
&amp;nbsp;&amp;nbsp;&amp;nbsp; For i = 0 To ComboBoxInlistCount - 1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If ComboBoxIn.List(i) = name Then nameInList = True
&amp;nbsp;&amp;nbsp;&amp;nbsp; Next i
End Function&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now everybody is happy because there are no duplicate names anymore.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you all.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Henk&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;(Still thinking about implementing Alexander Gray's solution of using a generic list of IFeatureLayers)&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 14:40:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306659#M7980</guid>
      <dc:creator>HenkZwols</dc:creator>
      <dc:date>2021-12-11T14:40:56Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306660#M7981</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN style="font-family:Courier New;"&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;I also had come across the situation and below is the solution I found. This displays a unique reference in combobox for a layer in the map. Hence if there is a layer with duplicate name in map then combobox will have duplicate names but each refers to unique layer in map.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;Create a custom class for Feature Layer and return layer name on �??ToStrong()�?? method. Add the custom feature layer object to combox as shown below.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;FeatureLayerDropDownItem FLayerDropDownObj = &lt;SPAN style="color:blue;"&gt;new&lt;/SPAN&gt; FeatureLayerDropDownItem((IFeatureLayer)layer);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;cmbBox.Items.Add(FLayerDropDownObj);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;Below is the code for creating custom class.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: gray; font-family: Courier New;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color: gray; font-family: Courier New;"&gt;&amp;lt;summary&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt; Custom Class the refers to a Feature Layer. This object has overridden method 'ToString' methods that returns FeatureLayer's Name.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt; This cutom object is used to load the Layers into the Combobox control&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;public&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;class&lt;/SPAN&gt; &lt;SPAN style="color:#2b91af;"&gt;FeatureLayerDropDownItem&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt; Feature Layer that this object refer to&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;IFeatureLayer m_FeatureLayer;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt; Constructor&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;param name="featureLayer"&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt;Feature Layer that this object refers to&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;public&lt;/SPAN&gt; FeatureLayerDropDownItem(IFeatureLayer featureLayer)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;m_FeatureLayer = featureLayer;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt; Name of the Feature Layer &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;public&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;override&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;string&lt;/SPAN&gt; ToString()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;if&lt;/SPAN&gt; (m_FeatureLayer == &lt;SPAN style="color:blue;"&gt;null&lt;/SPAN&gt;) &lt;SPAN style="color:blue;"&gt;return&lt;/SPAN&gt; &lt;SPAN style="color:#a31515;"&gt;""&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: green; font-family: Courier New;"&gt;//return the name of the feature layer as the ToString value that will be displayed in the drop down list&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;return&lt;/SPAN&gt; m_FeatureLayer.Name; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt; Checks the equality of the current and passed object.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt; The equality condition is true if their associtaed FeatureLayer objects are same and false otheriwse.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;param name="obj"&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt;Object to check the equality&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;returns&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt;The equality condition is true if their associtaed FeatureLayer objects are same and false otheriwse.&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;/returns&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;public&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;override&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;bool&lt;/SPAN&gt; Equals(&lt;SPAN style="color:blue;"&gt;object&lt;/SPAN&gt; obj)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: blue; font-family: Courier New;"&gt;try&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: green; font-family: Courier New;"&gt;//if both are null, then return true&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;if&lt;/SPAN&gt; (m_FeatureLayer == &lt;SPAN style="color:blue;"&gt;null&lt;/SPAN&gt; &amp;amp;&amp;amp; obj == &lt;SPAN style="color:blue;"&gt;null&lt;/SPAN&gt;) &lt;SPAN style="color:blue;"&gt;return&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;true&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: green; font-family: Courier New;"&gt;//return false, if any one is null&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;else&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;if&lt;/SPAN&gt; (m_FeatureLayer == &lt;SPAN style="color:blue;"&gt;null&lt;/SPAN&gt; || obj == &lt;SPAN style="color:blue;"&gt;null&lt;/SPAN&gt;) &lt;SPAN style="color:blue;"&gt;return&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;false&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: green; font-family: Courier New;"&gt;//checks if the passed object type is same as that of this object&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;if&lt;/SPAN&gt; (!(obj &lt;SPAN style="color:blue;"&gt;is&lt;/SPAN&gt; FeatureLayerDropDownItem)) &lt;SPAN style="color:blue;"&gt;return&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;false&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: green; font-family: Courier New;"&gt;//checks whether FeatureLayer of both the objects are equal. If yes, then declare that both the objects are equal. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;if&lt;/SPAN&gt; (((FeatureLayerDropDownItem)obj).FeatureLayerAssociated == m_FeatureLayer) &lt;SPAN style="color:blue;"&gt;return&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;true&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;else&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;return&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;false&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;catch&lt;/SPAN&gt; (&lt;SPAN style="color:#2b91af;"&gt;Exception&lt;/SPAN&gt; ex)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;MessageBox.Show(ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;return&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;false&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt; Feature Layer that this object refer to&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;public&lt;/SPAN&gt; IFeatureLayer FeatureLayerAssociated&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: blue; font-family: Courier New;"&gt;get&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;return&lt;/SPAN&gt; m_FeatureLayer;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: blue; font-family: Courier New;"&gt;set&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;m_FeatureLayer = &lt;SPAN style="color:blue;"&gt;value&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:green;"&gt; Geometry Type of the Features that this Feature Layer stores&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:gray;"&gt;///&lt;/SPAN&gt;&lt;SPAN style="color:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;public&lt;/SPAN&gt; esriGeometryType LayerGeometryType&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: blue; font-family: Courier New;"&gt;get&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: green; font-family: Courier New;"&gt;//return esriGeometryNull if the Associtaed FeatureLayer or its associated FeatureClass is null.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;if&lt;/SPAN&gt; (m_FeatureLayer == &lt;SPAN style="color:blue;"&gt;null&lt;/SPAN&gt; || m_FeatureLayer.FeatureClass == &lt;SPAN style="color:blue;"&gt;null&lt;/SPAN&gt;) &lt;SPAN style="color:blue;"&gt;return&lt;/SPAN&gt; esriGeometryType.esriGeometryNull;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;&lt;SPAN style="color:blue;"&gt;else&lt;/SPAN&gt; &lt;SPAN style="color:blue;"&gt;return&lt;/SPAN&gt; m_FeatureLayer.FeatureClass.ShapeType; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family:Courier New;"&gt;}&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2010 09:13:26 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306660#M7981</guid>
      <dc:creator>ThavitinaiduGulivindala</dc:creator>
      <dc:date>2010-12-11T09:13:26Z</dc:date>
    </item>
    <item>
      <title>Re: Find correct layer in map</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306661#M7982</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;&lt;BR /&gt;How are you adding layer names to the ComboBox? are you using recursion to find any nested layers inside a group layer? Or simply looping through the layers in the table of contents?&lt;BR /&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;See my code i posted.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;&lt;BR /&gt;What exactly are you doing with the layer that the user selects?&lt;BR /&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;User selects a layer and hits a startbutton:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Write all the features from selected layer that match the definition query to a scratch database. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Add a topologyclass with some rules. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Validate the topology.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Create 3 new featureclasses containing the geometries of the topology errors.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Add the new featureclasses to the map.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Why? Because we are working an a SDE Oracle database that omits some topology rules. We can't change that in a short time because of the changemanagementsystem. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Henk&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Dec 2010 07:44:48 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/find-correct-layer-in-map/m-p/306661#M7982</guid>
      <dc:creator>HenkZwols</dc:creator>
      <dc:date>2010-12-17T07:44:48Z</dc:date>
    </item>
  </channel>
</rss>

