[英]WPF WebBrowser disable clicking & typing
有沒有一種方法可以防止用戶單擊和鍵入WPF WebBrowser? 在我看來,只能在WinForms中執行此操作。
我嘗試過的事情:
browser.IsEnabled = false;
-無效,仍然可以點擊(導航)並輸入文字 browser.Focusable = false;
-一樣 e.Handled = true;
browser_MouseDown
事件e.Handled = true;
-由於某種原因未在按下鼠標時調用該事件 嘗試中是否有我錯過或做錯的事情?
三個事件和布爾為我做了。
bool BrowserIsLoaded = false;
private void Browser_LoadCompleted(object sender, NavigationEventArgs e)
{
BrowserIsLoaded = true;
}
private void Browser_Navigating(object sender, NavigatingCancelEventArgs e)
{
if(BrowserIsLoaded)
e.Cancel = true;
}
private void Browser_PreviewKeyDown(object sender, KeyEventArgs e)
{
if (BrowserIsLoaded)
e.Handled = true;
}
瀏覽器完成加載后,將觸發LoadCompleted事件。 設置一個布爾值,然后嘗試在嘗試輸入框時嘗試導航到新頁面時進行檢查。
如果您不想使用自己的布爾值(我將其用於其他用途,因此對我來說很有意義),則可以在需要時詢問瀏覽器是否已加載:
private void Browser_Navigating(object sender, NavigatingCancelEventArgs e)
{
WebBrowser wb = (WebBrowser)sender;
if(wb.IsLoaded)
{
e.Cancel = true;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.