可以給我一個提示如何在我的WPF應用程序的WebBrowser控件中顯示「覆蓋控件」?我想將導航圖形顯示爲覆蓋圖,以便用戶可以選擇一個功能,並在選擇導航控件後取消選擇。覆蓋WPF應用程序中的WebBrowser控件?
現在還沒有真正體驗過WPF。 :(我不知道從哪裏開始,任何提示或鏈接都會很好,謝謝
可以給我一個提示如何在我的WPF應用程序的WebBrowser控件中顯示「覆蓋控件」?我想將導航圖形顯示爲覆蓋圖,以便用戶可以選擇一個功能,並在選擇導航控件後取消選擇。覆蓋WPF應用程序中的WebBrowser控件?
現在還沒有真正體驗過WPF。 :(我不知道從哪裏開始,任何提示或鏈接都會很好,謝謝
這裏會有問題,WPF瀏覽器控件存在「空域」問題,基本上,這意味着你不能把任何東西在瀏覽器控件的頂部。
的work around是把你覆蓋控制到一個彈出控制。
存在使用鉻wpf based browser,它應該讓你像對待任何其他wpf對象,而不是activex瀏覽器控件。
thx的信息。我也會看看它。但現在上面的工作看起來不錯。 – pantarhei 2009-10-08 14:32:02
我發現了一種超越是,雖然這有點破解。基本上,您可以像WinForm控件一樣創建控件,並使用WindowsFormsHost來託管它們。
WindowsFormsHost將位於Web瀏覽器控件的頂部。
正如我所說,不理想,但會工作,如果你絕望。
WPF web瀏覽器控件的空間很難通過,但是,當顯示動畫時可以最小化網頁瀏覽器控件的高度,並在任務結束時再次設置高度。
此問題的更好的解決方法是通過處理瀏覽器控件的高度。下面找到一個簡單的場景。
假設您在Mainwindow中擁有一個Web瀏覽器控件。當你執行一些動作時,例如:點擊一個按鈕,你有另一個用戶控件,它位於MainWindow之上。但是,由於空域問題,網絡瀏覽器不在其父控制中,而是處於您的控制之上。
修正:標準修正是你可以設置網頁瀏覽器的高度爲零,當你觸發一些其他控制它取決於你的情況。下面是一個示例實現。
在MainWindow.Xaml中包含事件。
Activated="Window_Activated"
Deactivated="Window_Deactivated"
在Xaml.cs通過設置高度處理的情況。
private void Window_Activated(object sender, EventArgs e)
{
wb.Height = double.NaN;
}
private void Window_Deactivated(object sender, EventArgs e)
{
wb.Height = 0;
}
thx很多。看起來很有希望。從未聽說過「空域」問題。但很高興看到它可以輕鬆解決。你對我的問題的回覆速度有多快。令人印象深刻。 :) – pantarhei 2009-10-06 20:47:08
我怎麼能不能從卡爾工作貼出「解決辦法」?不幸的是,我不能問原來的笨蛋卡爾。源代碼下載鏈接被破壞,但我想我得到了確切的XAML(除了我刪除了按鈕命令)。任何人都可以發佈工作副本嗎? – newman 2012-05-19 03:33:02