2016-02-29 60 views
0

我試圖在我的WPF應用程序中主持WebBrowser,該應用程序將用於顯示閉路電視攝像機。我目前使用它有兩個問題。在WPF中使用WebBrowser時無法正常工作

首先,WebBrowser的行爲不像我期待的其他WPF UI元素。我已將它設置在Grid之內,但它不填充到行/列。它只會看起來像這樣;

enter image description here

從正常WPF來看我本來期望的WebBrowser以適應整個主機。這是它的簡單的XAML;

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition /> 
     <RowDefinition /> 
    </Grid.RowDefinitions> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition /> 
     <ColumnDefinition /> 
    </Grid.ColumnDefinitions> 
    <WebBrowser x:Name="cctvWB"/> 
</Grid> 

其次,它似乎並不想顯示常用的網頁,如谷歌或BBC,雖然我相信這可能是一些與我HTML,錯誤信息讀取「爲幫助保護您輸入本網站的信息的安全性,此內容的發佈者不允許將其顯示在框架中。「

這是我的HTML;

private void CCTVLoad(object sender, RoutedEventArgs e) 
{ 
    cctvWB.NavigateToString(@"<html> 
           <head> 
           </head> 
           <body> 
            <iframe src = " + "http://www.bbc.co.uk" + @"></ iframe > 
           </body> 
           <html>"); 
} 
+4

如果你想的Webbrowser填補電網嘗試Navigate直接導航到該URL而不是它的,你爲什麼要定義具有2行2列網格?錯誤是自我解釋的,你不能將該網站嵌入到框架中。爲什麼不使用WebBrowser.Navigate('url')? – Pikoh

回答

0

要回答你的第一個問題

剛剛從XAML,這將使WebBrowser以填充整個屏幕拆下RowDefinitionColumnDefinition。您已將Grid定義爲2行2列,因此網格內的控制WebBrowser默認佔用第一行的第一列。

爲了解答您的第二個問題,由於安全原因,網站的發佈者不允許您在iframe中顯示其內容。相反,你可以在iframe

cctvWB.Navigate(@"http://www.bbc.co.uk"); 
相關問題