POST
|
The ISelection Interface (ESRI.ArcGIS.Carto.ISelection) manages clipboard type operations on a selection. A reference to ISelection can be obtained from IActiveView.Selection where IActiveView represents either the Map (Data View) or the PageLayout (Layout View) of ArcMap. According to the documentation on ISelection, http://help.arcgis.com/en/sdk/10.0/arcobjects_net/componenthelp/index.html#//001200000qm8000000 3 ArcObjects coclasses implement that interface: ElementSelection, MapSelection and SimpleElementSelection. Based on their respective descriptions, it sounds like your ISelection reference would be an instance of the ElementSelection coclass, so click on that coclass in the document to see which other interfaces you can cast to that would offer other useful methods or properties, e.g. IEnumElement > IEnumElement.Next(). Also see the IActiveView.Selection Property documentation: http://help.arcgis.com/en/sdk/10.0/arcobjects_net/componenthelp/index.html#/Selection_Property/0012000001ns000000/
... View more
12-30-2011
02:35 PM
|
0
|
0
|
5
|
POST
|
Hello. Are you both performing product binding (new to ArcGIS 10 and which you seem to already be doing with ESRI.ArcGIS.RuntimeManager.Bind) and initializing ArcObjects with a valid ArcGIS license, either with the IAoInitialize.Initialize Method or the LicenseControl (for Windows Form Engine applications)? Remember, product binding is to be done even before initializing ArcObjects with a valid license.
... View more
08-16-2011
01:41 PM
|
0
|
0
|
3
|
POST
|
The ArcObjects SDK for the Microsoft .NET Framework is installed using its own Setup.exe program which is located in separate folder (called SDK_dotnet) of the installation media. The setup process that is initiated via this Setup.exe program will require the Microsoft .NET Framework 3.5 SP1 to already be installed on the computer and it will require a valid version of Microsoft Visual Studio (with which you will integrate the ArcObjects SDK), as detailed in the link below: ArcObjects SDK 10 System Requirements > Developer Solutions (SDK) Requirements http://resources.arcgis.com/content/arcgissdks/10.0/system-requirements
... View more
08-16-2011
12:59 PM
|
0
|
0
|
70
|
POST
|
Does OnDblClick() appear under the members menu on top of the code editor in your C# project? I have a custom tool (class that implements BaseTool) like yours and my breakpoint inside my OnDblClick method is reached, and its message box is displayed with every double-click I do? Mine works with or without base.OnDblClick() statement. public sealed class clsTool1 : BaseTool { ... ... ... #region Overridden Class Methods public override void OnDblClick() { base.OnDblClick(); System.Windows.Forms.MessageBox.Show("Double-clicked!") } ... ... ... } //end of class
... View more
08-16-2011
12:41 PM
|
0
|
0
|
6
|
POST
|
Correct, defining symbology by category is essentially the same as applying a UniqueValueRenderer in ArcObjects. This is as opposed to defining a Single Symbol (SimpleRenderer in ArcObjects). The below ArcObjects SDK sample code contains a VB.NET procedure or a C# method that you can call with its required parameters in order to apply a unique value renderer to a polygon feature layer. As with all samples, you will need to make the necessary adjustments. I suspect the sample will fall short of your specific workflow and application but it does demonstrate how to define a unique value renderer with a lot of the typical properties of that type of renderer. How to define a [unique value] renderer for your layer http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/d/0001000000t8000000.htm
... View more
08-16-2011
11:48 AM
|
0
|
0
|
5
|
POST
|
frankv3, 1. "even after registering it manually at the command line with "C:\Program Files\Common Files\ArcGIS\bin\EsriRegasm" there is no tlb file even though it reported back that it was registered successfully" = Registering the custom component DLL file manually with ESRIRegAsm at a command line achieves the task of actually registering the custom component. It does not produce the TLB file that you are looking for. I use that approach as an alternative to the Customize dialog/TLB file approach. Also, as far as I know, you do not need the TLB to be produced in order to invoke ESRIRegAsm. In fact, I just quickly tested this assumption by deleting my TLB before registering a .NET DLL with ESRIRegAsm, and my custom tool registered successfully. 2. "[ESRIRegAsm at the command line] reported back that it was registered successfully" = It sounds like the custom command (ViperPin tool) has registered successfully. Does it not appear as a command in the category specified in the code (Developer Samples category)? It may already be registered and ready to be dragged onto a toolbar. 3. The Register for COM Interop is a checkbox in the following location: Right-click on project in the Solution Explorer > Properties option > Compile (or Build) tab. You should see the checkbox. I believe an express version of either VS2008 or VS2010 should have that checkbox in that location. However, it should already be checked for the ViperPin tool project. It would only be unchecked if you unchecked it yourself.
... View more
08-16-2011
11:21 AM
|
0
|
0
|
7
|
POST
|
frankv3, Here are some things to consider that may help you overcome the issue. 1. The ViperPin Developer Sample includes both VS2008 and VS2010 solutions so perhaps you can apply the .tlb instructions you mention that requires VS2008 by working with the ViperPin2008.sln instead of the ViperPin2010.sln. 2. In the Customize dialog of ArcMap > Add From File, you specify the .tlb as instead of the .dll as you already discoverd. I believe you can specify a .dll instead if it is a VB6 (native COM) dll. For a .NET .dll (C# or VB.NET), specify the .tlb file. 3. Attempt to bypass the Add From File with the .tlb file approach by seeing if you can register the ViperPin custom component by invoking ESRIRegAsm.exe in a command line, e.g. command line syntax "C:\Program Files\Common Files\ArcGIS\bin\EsriRegasm" /p:desktop "C:\myStuff\myProgram\Debug\Bin\myCustomComponent.dll" You need only change the string in the pathname to the DLL and the DLL name itself. More about ESRIRegAsm: http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/ESRIRegAsm_utility/0001000004n6000000/ Note, when you register a custom component using the Customize dialog, you are technically invoking the ESRIRegAsm utility behind the scenes. All ArcGIS Desktop 10 machines should have ESRIRegAsm in the C:\Program Files\Common Files\ArcGIS\bin folder. It installs there with the installation of ArcGIS Desktop 10. Once it registers successfully with ESRIRegAsm by command line, you will see a Registration Succeeded message box.
... View more
08-16-2011
07:16 AM
|
0
|
0
|
7
|
POST
|
I am not sure if there is an easy way to update the old ngo engine interface names to corresponding ones in ArcGIS 10, however, the below document touches up on NGO library removal and makes mention of some equivalent interfaces in version 10, with a comparison table: Migrating schematic custom code to ArcGIS 10 > NGO library removal --- http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#//000100000m29000000
... View more
07-18-2011
12:09 PM
|
0
|
0
|
11
|
POST
|
The following article may give some clues to help you: http://support.microsoft.com/kb/814319
... View more
03-02-2011
07:39 AM
|
0
|
0
|
35
|
POST
|
SCC80, try two things. One is to fully-qualify the IDocument with the namespace: ESRI.ArcGIS.Framework.IDocument The other is to dimension the object variable as a module-level variable rather than a local variable. Do you still see the compile error 'IDocument' is not accessible in this context because it is 'Friend'.?
... View more
03-02-2011
07:35 AM
|
0
|
0
|
35
|
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:23 AM
|