C#应用程序 - 如何在xaml表单中显示网站?

时间:2016-04-28 15:16:44

标签: c# wpf xaml browser

我正在尝试将Web浏览器添加到现有的C#应用​​程序中,但是,在大约6年内没有使用过C#,我对它的工作原理并不熟悉。

应用程序的GUI是使用XAML创建的,我想使用它在应用程序中添加/嵌入Web浏览器,但我不知道如何执行此操作。

我的WebBrowser.xaml课程中有以下脚本:

<Window x:Class="RiviamAgent.WebBrowser"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:local="clr-namespace:RiviamAgent"
    mc:Ignorable="d"
    Title="WebBrowser" Height="500" Width="500">
<Window.CommandBindings>
    <CommandBinding Command="New" CanExecute="CommonCommandBinding_CanExecute" />
    <CommandBinding Command="Open" CanExecute="CommonCommandBinding_CanExecute" />
    <CommandBinding Command="Save" CanExecute="CommonCommandBinding_CanExecute" />
</Window.CommandBindings>
<DockPanel>
    <ToolBarTray DockPanel.Dock="Top">
        <ToolBar Header="File">
            <Button Command="New" Content="New" ToolBar.OverflowMode="Always" />
            <Button Command="Open" Content="Open" ToolBar.OverflowMode="Always" />
            <Button Command="Save" Content="Save" ToolBar.OverflowMode="Always" />
        </ToolBar>
        <ToolBar Header="Edit" Margin="5.4,0,-5.4,0">
            <Button Command="Cut" Content="Cut" ToolBar.OverflowMode="Always" />
            <Button Command="Copy" Content="Copy" ToolBar.OverflowMode="Always" />
            <Button Command="Paste" Content="Paste" ToolBar.OverflowMode="Always" />
        </ToolBar>
        <ToolBar Margin="9.2,0,-8.2,0">
            <Button Command="Back" ToolTip="Return to the previous page"/>
            <Image Source="C:\Users\elgan\workspace\browser\riviam_windows\Images\navigateBack.png" Width="20" Height="20" Margin="0,0,0,2.4" />
        </ToolBar>
        <ToolBar Margin="16.4,0,-16.2,0" >
            <Button Command="Forward" ToolTip="Proceed to the next page" />
            <Image Source="C:\Users\elgan\workspace\browser\riviam_windows\Images\navigateForward.png" Width="20" Height="20" />
        </ToolBar>
    </ToolBarTray>
    <TextBox AcceptsReturn="True" />
    <WebBrowser Name="browser" Navigating="www.google.com"/>
    <TextBlock HorizontalAlignment="Left" VerticalAlignment="Top" FontSize="12">
       Web page
    </TextBlock>

</DockPanel>

目前显示的是空白页面,顶部有一个工具栏,其中包含“文件”。 &安培; &#39;编辑&#39;菜单,以及&#39; Back&#39;和&#39;转发&#39;导航按钮。

我现在正试图在页面的其余部分显示网站的内容,但我不知道该怎么做。

在我写的最后几行中,我试图让Google显示在GUI的主要区域(即菜单和导航按钮下方),但此刻,那里没有显示任何内容,除了文本,&#34;网页&#34;。

谁能告诉我为什么会这样?如何让表单显示Google或任何其他网站?提前谢谢。

2 个答案:

答案 0 :(得分:2)

尝试更改:

Navigating="www.google.com"

为...

Source="http://www.google.com"

希望有所帮助!

答案 1 :(得分:0)

首先导航=&#34; www.google.com&#34; - 正确的网站名称为:https://www.google.com

尝试使用http://或https://

启动所有网址

要浏览网站,请尝试将其放在MainWindow.xaml.cs中的某个位置

 public MainWindow()
        {
            InitializeComponent();

WebBrowser_Name.Navigate(new Uri(@"https://google.com"));