Customizing the ArcMap Find Dialog Context Menu

5628
7
Jump to solution
05-20-2015 04:45 AM
AndryJoos
Occasional Contributor

Hi

I'm currently trying to a find a way on how to customize the  ArcMap Find dialog context menu:

GUID-C9E0B5A4-DE8A-43DB-9B24-CC3FDB8CAD8A-web.png

According to the ArcObjects SDK that's possible: ArcObjects 10 .NET SDK Help

When I use the "Customize Mode" in ArcMap and check the contents of the Address Find Context Menu, I can see my custom command added to the menu. However, in the Find Dialog, that's not the case. And the customized items are missing. Is this a bug? Is there something I can do about this? Do my commands need to implement or support a certain interface to be displayed in the context menu of the Find dialog?

Looks like I'm not the only one who wants to do this:

arcgis 10.0 - Is it possible to add a command to the ArcMap Find dialog context menu? - Geographic I...

Unfortunately, that question has not yet been answered.

Thanks for any help on this!

Andry

0 Kudos
1 Solution

Accepted Solutions
AndryJoos
Occasional Contributor

I'm answering my own question here, because I've got an "official statement" from Esri about this topic. The product engineering having the find dialog in his responsibility was so kind to answer my specific question. Unfortunately, there seems to be no way to customize the context menu of the "Features" tab of the find dialog:

The Find dialog was refactored many releases ago so it could be reused in ArcReader, Engine, ArcMap, ArcScene and ArcGlobe. As a result the context menu for find features results doesn’t follow the typical pattern of other context menus in the application. Every command in the context menu is hardcoded, there is no way for external developers to add to this menu. It also isn’t a simple change to open this up for customization.

View solution in original post

7 Replies
DuncanHornby
MVP Notable Contributor

My gut feeling is that you cannot customize the find dialog. It would require you getting a handle of the form, inserting controls with their underlying code and I don't think that is possible. Happy to be proven wrong!

0 Kudos
AndryJoos
Occasional Contributor

Hi Duncan - thanks for your reply, it's much appreaciated!

Working hard to prove you wrong 😉 Actually, Esri describes how to customize the dialog (or at least the context menu of the dialog) in this SDK help page: http://help.arcgis.com/en/sdk/10.0/arcobjects_net/componenthelp/index.html#/AddressFindDataClass_Cla...

Also, troughout ArcMap it's not required to get handles of forms or inserting controls to the underlying code of anything for a simple thing as extending a context menu with a known ID (like the Address Find Context Menu).

Unfortunately, this does not work: The insertion of my custom Command to the menu works fine, as I can check trough the customize mode of ArcMap, looking at the Address Find Context Menu. However my customized menu does not really end up in the dialog. The Find dialog always just displays the default, not customized, content of the Address Find Context Menu. Feels a bit odd to me.

That's why I wondered whether my Command needs to support a certain interface (somewhere along the lines of the AdressFindData structures) to be shown in the context menu of the search results?

0 Kudos
DuncanHornby
MVP Notable Contributor

Hmmm...I started wandering around on the internet and found this discussion as a way of customizing an existing esri dialog:

arcgis desktop - Customizing Identify Dialog in ArcMap - Geographic Information Systems Stack Exchan...

Your question was also asked here but never got an answer:

arcgis 10.0 - Is it possible to add a command to the ArcMap Find dialog context menu? - Geographic I...

AndryJoos
Occasional Contributor

I  have already mentioned the Stack Exchange link with the same question in my original post.

0 Kudos
DuncanHornby
MVP Notable Contributor

Oh yeah, oops!

AndryJoos
Occasional Contributor

But yeah even if that post is already 2 years of age, I still hope that someone might find and answer to it. My colleague has added a comment (I couldn't because my Stack Overflow reputation is not yet high enough ) to probably trigger some more people to visit that question. Who knows

0 Kudos
AndryJoos
Occasional Contributor

I'm answering my own question here, because I've got an "official statement" from Esri about this topic. The product engineering having the find dialog in his responsibility was so kind to answer my specific question. Unfortunately, there seems to be no way to customize the context menu of the "Features" tab of the find dialog:

The Find dialog was refactored many releases ago so it could be reused in ArcReader, Engine, ArcMap, ArcScene and ArcGlobe. As a result the context menu for find features results doesn’t follow the typical pattern of other context menus in the application. Every command in the context menu is hardcoded, there is no way for external developers to add to this menu. It also isn’t a simple change to open this up for customization.