Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

WebBrowser-Klasse

Hinweis: Diese Klasse ist neu in .NET Framework, Version 2.0.

Ermöglicht es Benutzern, innerhalb Ihres Formulars zu Webseiten zu navigieren.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

[ComVisibleAttribute(true)] 
[ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)] 
public class WebBrowser : WebBrowserBase
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch) */ 
public class WebBrowser extends WebBrowserBase
ComVisibleAttribute(true) 
ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch) 
public class WebBrowser extends WebBrowserBase

Mithilfe des WebBrowser-Steuerelements können Sie Webseiten und andere für den Browser aktivierte Dokumente in eigene Windows Forms-Anwendungen aufnehmen. So können Sie mit dem WebBrowser-Steuerelement z. B. eine HTML-Benutzerhilfe oder Webbrowserfunktionen in Ihrer Anwendung bereitstellen. Darüber hinaus können Sie Ihre vorhandenen Websteuerelemente mithilfe des WebBrowser-Steuerelements in eigene Windows Forms-Anwendungen einfügen.

HinweisWichtig:

Das WebBrowser-Steuerelement ist ressourcenintensiv. Wenn das Steuerelement nicht mehr benötigt wird, müssen Sie die Dispose-Methode aufrufen, um sicherzustellen, dass alle Ressourcen umgehend freigegeben werden. Sie müssen die Dispose-Methode im gleichen Thread aufrufen, der die Ereignisse angefügt hat. Dies sollte immer der Nachrichten- oder Benutzeroberflächenthread sein.

Das WebBrowser-Steuerelement kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code.

Das WebBrowser-Steuerelement verfügt über mehrere Eigenschaften, Methoden und Ereignisse für die Navigation. Mit den folgenden Membern können Sie mit einem Steuerelement zu einem bestimmten URL wechseln, die Navigationsverlaufsliste vor- und rückwärts durchlaufen und die Start- und Suchseite des aktuellen Benutzers laden:

Wenn die Navigation fehlschlägt, wird eine Seite mit einer Problembeschreibung angezeigt. Bei der Navigation mit den genannten Membern treten in den verschiedenen Navigationsphasen das Navigating-Ereignis, das Navigated-Ereignis und das DocumentCompleted-Ereignis ein.

Mit diesen und weiteren Membern, z. B. der Stop-Methode und der Refresh-Methode, können Sie, ähnlich wie in Internet Explorer, Benutzeroberflächensteuerelemente in Ihre Anwendung implementieren. Einige Member bieten sich auch dann an, wenn das WebBrowser-Steuerelement nicht im Formular angezeigt werden soll. So können Sie beispielsweise mit der Print-Methode die neueste Version einer Webseite drucken, ohne diese dem Benutzer anzuzeigen.

Mit dem WebBrowser-Steuerelement können Sie auch Inhalt anzeigen, den Sie in Ihrer Anwendung erstellen oder aus einer Datenbank bzw. Ressourcendatei abrufen. Über die DocumentText-Eigenschaft oder die DocumentStream-Eigenschaft können Sie den Inhalt des aktuellen Dokuments als Zeichenfolge oder Datenstream abrufen oder festlegen.

Sie können den Inhalt einer Webseite auch über die Document-Eigenschaft ändern, die ein HtmlDocument-Objekt enthält, das verwalteten Zugriff auf das HTML-Dokumentobjektmodell (DOM) der aktuellen Seite bereitstellt. Diese Eigenschaft eignet sich in Verbindung mit der ObjectForScripting-Eigenschaft zum Implementieren bidirektionaler Kommunikation zwischen dem Anwendungscode und dem DHTML (Dynamic HTML)-Code in einer Webseite, sodass Websteuerelemente und Windows Forms-Steuerelemente in einer Benutzeroberfläche kombiniert werden können. Sie können mit der Document-Eigenschaft Skriptcodemethoden aus Ihrer Anwendung aufrufen. Der Skriptcode kann auf die Anwendung über das window.external-Objekt zugreifen, bei dem es sich um ein integriertes DOM-Objekt für Hostzugriff handelt und das dem Objekt entspricht, das Sie für die ObjectForScripting-Eigenschaft angeben.

HinweisHinweis

Diese Klasse nimmt Sicherheitsanforderungen auf Klassenebene vor. Wenn eine abgeleitete Klasse oder ein Aufrufer in der Aufrufliste nicht über die Berechtigung Volle Vertrauenswürdigkeit verfügt, wird eine SecurityException ausgelöst. Ausführliche Informationen über Sicherheitsforderungen finden Sie unter Verknüpfungsaufrufe und Vererbungsforderungen.

HinweisHinweis

Die WebBrowser-Klasse kann nur in Threads verwendet werden, die auf den STA (Singlethread-Apartment)-Modus festgelegt sind. Stellen Sie zum Verwenden dieser Klasse sicher, dass die Main-Methode mit dem STAThreadAttribute-Attribut gekennzeichnet ist.

Hinweis zu Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows CE: Für den vollen Funktionsumfang von WebBrowser in .NET Compact Framework-Anwendungen ist die Windows Mobile-Software, Version 5.0, für Pocket PCs und Smartphones erforderlich. Weitere Informationen finden Sie unter Gewusst wie: Verwenden des WebBrowser-Steuerelements in .NET Compact Framework.

Im folgenden Codebeispiel wird das Implementieren einer Adressleiste veranschaulicht, die mit dem WebBrowser-Steuerelement verwendet werden kann. Für dieses Beispiel ist es erforderlich, dass Sie über Formular mit einem WebBrowser-Steuerelement mit dem Namen webBrowser1, einem TextBox-Steuerelement mit dem Namen TextBoxAddress und einem Button-Steuerelement mit dem Namen ButtonGo verfügen. Wenn Sie einen URL in das Textfeld eingeben und anschließend die EINGABETASTE drücken oder auf die Schaltfläche Wechseln zu klicken, wechselt das WebBrowser-Steuerelement zum angegebenen URL. Wenn Sie zum Navigieren auf einen Hyperlink klicken, wird das Textfeld automatisch aktualisiert und zeigt den aktuellen URL an.

Das vollständige Codebeispiel finden Sie unter Gewusst wie: Hinzufügen von Webbrowserfunktionen zu einer Windows Forms-Anwendung.

// Navigates to the URL in the address box when 
// the ENTER key is pressed while the ToolStripTextBox has focus.
private void toolStripTextBox1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        Navigate(toolStripTextBox1.Text);
    }
}

// Navigates to the URL in the address box when 
// the Go button is clicked.
private void goButton_Click(object sender, EventArgs e)
{
    Navigate(toolStripTextBox1.Text);
}

// Navigates to the given URL if it is valid.
private void Navigate(String address)
{
    if (String.IsNullOrEmpty(address)) return;
    if (address.Equals("about:blank")) return;
    if (!address.StartsWith("http://") &&
        !address.StartsWith("https://"))
    {
        address = "http://" + address;
    }
    try
    {
        webBrowser1.Navigate(new Uri(address));
    }
    catch (System.UriFormatException)
    {
        return;
    }
}

// Updates the URL in TextBoxAddress upon navigation.
private void webBrowser1_Navigated(object sender,
    WebBrowserNavigatedEventArgs e)
{
    toolStripTextBox1.Text = webBrowser1.Url.ToString();
}

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

.NET Framework

Unterstützt in: 2.0

.NET Compact Framework

Unterstützt in: 2.0
Anzeigen: