我正在尝试在我的WebBrowser
应用程序中托管WPF
,该应用程序将用于显示闭路电视摄像机。我目前使用它有两个问题。
首先,WebBrowser
的行为不像我期望的其他WPF
UI元素。我已将其设置在Grid
内,但它不会填充到行/列。它最终看起来像这样;
从正常WPF
的角度来看,我原本期望WebBrowser
适合整个主机。这是简单的XAML
;
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<WebBrowser x:Name="cctvWB"/>
</Grid>
其次,它似乎不想显示常见的网页,例如Google或BBC,但我相信这可能与我的HTML
有关,错误消息显示为“To有助于保护您在本网站上输入的信息的安全性,此内容的发布者不允许将其显示在框架中。“
这是我的HTML
;
private void CCTVLoad(object sender, RoutedEventArgs e)
{
cctvWB.NavigateToString(@"<html>
<head>
</head>
<body>
<iframe src = " + "http://www.bbc.co.uk" + @"></ iframe >
</body>
<html>");
}
答案 0 :(得分:0)
回答第一个问题
只需从xaml中移除RowDefinition
和ColumnDefinition
即可使WebBrowser
填满整个屏幕。您已将Grid
定义为2行2列,因此默认情况下Grid中的控件WebBrowser
占用第一行的第一列。
要回答您的第二个问题,由于安全原因,该网站的发布者不允许您在iframe
中显示其内容。相反,您可以尝试Navigate
直接导航到网址,而不是在iframe
cctvWB.Navigate(@"http://www.bbc.co.uk");