默认WebView2加载网页是可以通过F12和右键打开调试窗口,但是大多情况下我们在发版时要禁用。
禁用F12是禁用按键事件来解决的。
WebView.PreviewKeyDown += WebView_PreviewKeyDown;
private void WebView_PreviewKeyDown(object sender, KeyEventArgs e)
{
// 检查按下的键是否是 F12,如果是,禁止其默认行为
if (e.Key == Key.F12)
{
e.Handled = true;
}
}
右键菜单通过禁用鼠标右键事件不起作用。
所以这里在页面加载后执行JS实现。
WebView.Visibility = Visibility.Hidden;
WebView.NavigationCompleted += WebView_NavigationCompleted;
private async void WebView_NavigationCompleted(object sender, CoreWebView2NavigationCompletedEventArgs e)
{
await WebView.CoreWebView2.ExecuteScriptAsync(
@"
document.addEventListener('contextmenu', function(event) {
event.preventDefault();
}, false);
"
);
await Task.Delay(600);
WebView.Visibility = Visibility.Visible;
}
private void ZuoyeWin_OnLoaded(object sender, RoutedEventArgs e)
{
WebView.Visibility = Visibility.Hidden;
WebView.PreviewKeyDown += WebView_PreviewKeyDown;
WebView.NavigationCompleted += WebView_NavigationCompleted;
LoadUrl();
}
private void WebView_PreviewKeyDown(object sender, KeyEventArgs e)
{
// 检查按下的键是否是 F12,如果是,禁止其默认行为
if (e.Key == Key.F12)
{
e.Handled = true;
}
}
private async void WebView_NavigationCompleted(object sender, CoreWebView2NavigationCompletedEventArgs e)
{
await WebView.CoreWebView2.ExecuteScriptAsync(
@"
document.addEventListener('contextmenu', function(event) {
event.preventDefault();
}, false);
"
);
await Task.Delay(600);
WebView.Visibility = Visibility.Visible;
}
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有