ThinkGeo.com    |     Documentation    |     Premium Support

Hijack the double click

 This may be a general C# question and not specific to MapSuite, but...


I am using the Map.DoubleMouseClick to do things with features on the screen. That works fine.  Thing is, the Map control processes the dbl-click too and does a zoom-in.


In my code, is there a way to block the DoubleMouseClick from going on to the Map control if I choose?


Dave



David, 
  
 Thanks for your post. 
  
 Any behavior that related map extent can be controlled by ExtentOverlay. 
  
 You can disable double click by the following code: 
 winformsMap1.ExtentOverlay.DoubleLeftClickMode = MapDoubleLeftClickMode.Disabled; 
  
 Please let me know if you have more questions. 
 Thanks 
  
 James

I don’t want to disable the handling of the double-click by the map for all double clicks, just the ones on shapes: 
  
 Double-click on a feature and I will handle it (pop up a dialog): do not pass the double click thru to the map 
 Double-click not on a feature and the map handles it (zoom in): pass the double click thru to the map 
  
 I have the double-click on the shape opening the dialog, but I can’t stop the double-click from passing thru to the map so I get a zoom in too. 
  
 Dave

David,


This is more advanced than the designed requirement, while I think you probably can achieve this by writing your own ExtentInterativeOverlay, following is some code snippet you can take a reference.
 

public class MyExtentInterativeOverlay : ExtentInteractiveOverlay
    {
        protected override InteractiveResult MouseDoubleClickCore(InteractionArguments interactionArguments)
        {
            if (IsFeatureSelected)
            {
                //PopUp Message();
                return new InteractiveResult(InteractiveOverlayDrawType.DoNotDraw, ProcessOtherOverlaysMode.DoNotProcessOtherOverlays);
            }
            else
            {
                return base.MouseDoubleClickCore(interactionArguments);
            }
        }
    }
 

 
Any more questions please feel free to let me know.
 
Thanks.
 
Yale