2016-04-28 3 views
2

Ich versuche, einen Webbrowser zu einer vorhandenen C# -Anwendung hinzufügen, aber, C# in etwa 6 Jahren nicht verwendet, ich bin ziemlich unbekannt, wie es funktioniert.C# -Anwendung - wie wird eine Website in einem XAML-Formular angezeigt?

Die GUI für die Anwendung wurde mit XAML erstellt, und ich möchte damit den Webbrowser innerhalb der Anwendung hinzufügen/einbetten, aber ich bin nicht sicher, wie dies zu tun ist.

Ich habe das folgende Skript in meiner WebBrowser.xaml Klasse:

<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> 

und die derzeit an der Spitze eine leere Seite mit einer Symbolleiste zeigt Menüs ‚Datei‘ enthält & ‚Bearbeiten‘, sowie die Navigationstasten "Zurück" und "Vorwärts".

Ich versuche jetzt, den Inhalt einer Website im Rest der Seite anzuzeigen, aber ich bin mir nicht sicher, wie dies zu tun ist.

In den letzten paar Zeilen, die ich geschrieben habe, versuche ich, Google im Hauptbereich der GUI (dh unter den Menüs und Navigationstasten) anzuzeigen, aber im Moment wird dort nichts angezeigt , außer dem Text "Webseite".

Kann mir jemand sagen, warum das ist? Wie kann ich das Formular erhalten, um Google oder eine andere Website anzuzeigen? Danke im Voraus.

+0

Ich bin überrascht, dass tatsächlich kompiliert. Sie haben eine URL für Eventhandler ... – Xiaoy312

Antwort

2

Versuchen Wechsel:

Navigating="www.google.com" 

zu ...

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

Hoffnung, das hilft!

0

allererst Navigating = "www.google.com" - ein richtiger Website-Name wäre: https://www.google.com

versuchen, alle URL mit http: // zu beginnen oder https: //

Und Navigieren Sie durch Webseiten, versuchen Sie es irgendwo in MainWindow.xaml.cs nach

+0

Es würde navigieren, wenn eine Seite Ihres Hauptformulars geladen wird. –

Verwandte Themen