POST
|
Thanks Robert for your reply. I could try to store the layer properties in a .lyr-file, but that gives a lot of overhead, and it takes time to open a .lyr-file, as it contains also a reference to the source (if the source can't be found, the symbology is invalid). We have about a dozen applications that add layers to the map for storing program output. Each of these layers gets its symbology from a layer file that installs with the app. Opening the layer file takes very little time and the symbology is not invalid. You simply get the layer from the file, use IObjectCopy to clone its renderer and assign that renderer to the layer. The code below is for a raster layer but it can be modified to work for a feature layer: Dim layerFile As ILayerFile = New LayerFile
layerFile.Open(layerFilePath)
Dim templateLayer As ILayer = layerFile.Layer()
Dim objectCopy As IObjectCopy = New ObjectCopy
Dim renderer As IRasterRenderer = DirectCast(objectCopy.Copy(DirectCast(templateLayer, IRasterLayer).Renderer), IRasterRenderer)
rasterLayer.Renderer = renderer
This will work as long as the renderer properties are valid for the layer you're assigning it to (i.e. field names match, etc.). While I haven't specifically tried it, it should be possible to copy the layer's selection settings as these settings are part of the serialized layer object stored in the layer file.
... View more
07-01-2014
05:32 AM
|
0
|
0
|
1060
|
POST
|
When you remove a layer from the map, ArcMap keeps a reference to it so that you can undo the operation using the Undo/ReDo buttons. So, whenever you remove a layer and want to release any locks that may be on the data source you should call IDataLayer2.Disconnect if the layer implements that interface. Prior to that you will need to call ReleaseComObject on any ArcObjcts that may reference the data source (namely cursors and feature/row objects but there could be others). After calling Disconnect, clear the operation stack by calling IMxDocument.OperationStack.Reset. Finally, call ReleaseComObject on your layer reference. Hope this helps.
... View more
06-27-2014
10:06 AM
|
0
|
0
|
829
|
POST
|
You said you compiled the addin in 10.2.1 and are trying to run it on 10.2.0. I don't know about addins but that doesn't typically work for standard COM extensions since ArcObjects are not backwards compatible.
... View more
06-20-2014
05:29 AM
|
1
|
0
|
1144
|
POST
|
I believe you can use a ArcGIS Server license but other than that you'll need the Desktop or Engine license.
... View more
06-20-2014
05:15 AM
|
0
|
0
|
276
|
POST
|
I guess I'm not following your definition of the problem. A custom command can do whatever you want it to do. Just add whatever code you need to the OnClick event. When the command is clicked, that code executes.
... View more
06-16-2014
07:19 AM
|
0
|
0
|
859
|
POST
|
The ProgId for the route identify tool is esriLocationUI.RouteIdentifyTool. I found this by looking up {6C3CC7D2-0EA4-43A0-88C3-911FEDCBF268} in the system registry. You should be able to use either in your code, but like you, I prefer to use the ProgId since it's more readable.
... View more
06-06-2014
12:02 PM
|
0
|
0
|
377
|
POST
|
Correct, on a 64-bit OS, the keys you need will be under the Wow6432Node node when you look at it using RegEdit. However, when you write your code to access the registry you should leave Wow6432Node out of the path. The OS will know to look under that node automatically.
... View more
06-05-2014
06:39 AM
|
0
|
0
|
617
|
POST
|
For a VB project, you can find the ApplicationInfo.vb file under My Project in the Solution Explorer. Make sure you click the Show All Files button at the top of the listview or you won't be able to expand the My Project node. You can edit the file without unloading the project.
... View more
06-05-2014
05:41 AM
|
0
|
0
|
718
|
POST
|
That information is in the system registry. You can look it up under HKLM\Software\ESRI\Desktop10.x.
... View more
06-05-2014
05:35 AM
|
0
|
0
|
617
|
POST
|
I've never created one as an add-in, but with the standard COM implementation the UserData property is something you can implement yourself. It can return anything you set it to return since it's typed as Object. In one implementation we've created, we return the user control. In this case, you can access the controls it houses via its Controls collection. In another implementation we return a custom object class we created to allow the passing of data via properties on that class. I would imagine with an add-in you could override the property to return whatever you want but I don't know that for sure.
... View more
06-03-2014
11:06 AM
|
0
|
0
|
383
|
POST
|
As far as I know, there is no comprehensive list that maps license levels to functionality. If your application has a requirement that it run under a certain license level then you should be developing and testing under that same license level. This will keep you from writing something that requires a higher license level.
... View more
05-30-2014
06:01 AM
|
0
|
0
|
231
|
POST
|
In VB, use TypeOf to test if an object implements a particular interface. In C# use Is. If TypeOf yourLayer Is IGroupLayer Then...it's a group layer. if (yourLayer is IGroupLayer) {...it's a group layer.
... View more
05-29-2014
10:14 AM
|
0
|
0
|
521
|
POST
|
Yes. While the terms themselves are not synonymous, in this case they all refer to the same identifier.
... View more
05-29-2014
10:10 AM
|
0
|
0
|
783
|
POST
|
It appears to be a bug. We have an application that uses the map control to display a preview. Even though the map shown in the map control is the map from the document, we create a deep copy of the map object before assigning it to the map control. I usually keep my scroll bars in ArcMap turned off. If I turn them on, switch to layout view then back to data view, the scroll bars remain visible. If I do the same thing with our dialog open, the scroll bars disappear when I return to data view. The map control has its scroll bars turned off. I'm not really sure why ArcMap would be picking up that property setting but it apparently does.
... View more
05-28-2014
06:42 AM
|
0
|
0
|
626
|
Title | Kudos | Posted |
---|---|---|
1 | 06-20-2014 05:29 AM | |
1 | 02-01-2011 04:18 AM | |
1 | 02-04-2011 04:15 AM | |
1 | 01-17-2014 03:57 AM | |
1 | 10-07-2010 07:37 AM |
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:23 AM
|