• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

127
Vistas
Overriding Webview2 context menu along with default one

Following the approach mentioned in the below link I was able to override default context menu.

How do you override the ContextMenu that appears when right clicking on WebView2 Control?

I have a question is there a way to show both based on some condition like

  • Normal right-click - Custom Overridden context menu
  • CTRL or SHIFT press + right-click - default context menu
over 3 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

That's actually easy, when you have the code from that link.

The contextmenu event derives from MouseEvent, so it has information about the control keys being pressed.

Simply replace the javascript contextmenu handler to:

document.addEventListener('contextmenu', function (event)
{
    if (!event.ctrlKey && !event.shiftKey)
    {
        let jsonObject =
        {
            Key: 'contextmenu',
            Value:
            {
                X: event.screenX,
                Y: event.screenY
            }
        };
        window.chrome.webview.postMessage(jsonObject);
        event.preventDefault();
    }
});

It works so that if a control key is pressed, it does absolutely nothing, which will show the default menu. If no keys are pressed, it sends the coordinates to C# and calls event.preventDefault();.

Note: In the code from that link, I call:

webView21.CoreWebView2.Settings.AreDefaultContextMenusEnabled = false;

Here, you should NOT call that. Instead call event.preventDefault(); in javascript.

over 3 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda