hope this fix your issue WPF WebBrowser Control has many Touch events that you could capture and handle and potentially stop the ContextMenu from ever popping up. Or you could supply your own ContextMenu for the browser to use. The preview events are lower down on the page and can be used to intercept events that would cause the context menu to pop-up.
like below fixes the issue There are 2 reason this did not work. 1) is that ContextMenu does not reside in the same VisualTree as the element it is set for ( i.e. it's PlacementTarget). There for you would not be able to bind to an element with ElementName.
I wish did fix the issue. You are displaying the menu in a onmousedown handler and hiding the native menu in a oncontextmenu handler. The spec doesn't say whether one should run before the other. What happens is that in Firefox, the onmousedown handler runs first, so your custom menu shows up, and then the oncontextmenu runs on your custom menu that appeared. There is no return false in that element, so the native menu shows up.