Подтвердить что ты не робот

Управление веб-браузером - предотвращение правостороннего щелчка

В моем приложении у меня есть форма, содержащая элемент управления браузера, в котором отображается отчет SSRS. Я хотел бы запретить пользователю щелкнуть правой кнопкой мыши в элементе управления браузера и отобразить всплывающее меню. В идеале я бы хотел щелкнуть правой кнопкой мыши, чтобы ничего не делать. Есть ли способ, которым я могу это сделать?

4b9b3361

Ответ 1

Вы можете установить значение IsWebBrowserContextMenuEnabled равным false. Вероятно, вы также захотите установить AllowWebBrowserDrop равным false, чтобы они не могли перетащить URL-адрес в приложение и загрузить его.

        webBrowser1.IsWebBrowserContextMenuEnabled = false;
        webBrowser1.AllowWebBrowserDrop = false;

Ответ 2

Для WPF === >

wbBrowser.ContextMenu.IsEnabled = false;

Ответ 3

для любого случая, winform или wpf:

     private void WebBrowser_LoadCompleted(object sender, System.Windows.Navigation.NavigationEventArgs e)
        {
            ((WebBrowser)sender).InvokeScript("eval", "$(document).contextmenu(function() {    return false;        });");
}

Ответ 4

Задайте для свойства IsWebBrowserContextMenuEnabled значение false.

Ответ 5

У меня есть решение для моего проекта (WPF - MVVM):

Важно добавить ссылку: Microsoft.mshtml

Реализовать событие: webBrowser.LoadCompleted + = webBrowser_LoadCompleted;

using mshtml;

private void webBrowser_LoadCompleted(object sender, System.Windows.Navigation.NavigationEventArgs e)
{
    object doc = webBrowser.Document;
    HTMLDocumentEvents2_Event evn2 = doc as HTMLDocumentEvents2_Event;
    HTMLDocumentEvents_Event evn = doc as HTMLDocumentEvents_Event;
    evn.oncontextmenu += new HTMLDocumentEvents_oncontextmenuEventHandler(Evn_oncontextmenu);
    evn2.oncontextmenu += new HTMLDocumentEvents2_oncontextmenuEventHandler(Evn2_oncontextmenu);
}

private bool Evn2_oncontextmenu(IHTMLEventObj pEvtObj)
{
    return false;
}

private bool Evn_oncontextmenu()
{
    return false;
}

Надеюсь на помощь.