.NET-HILFE

Webview2 C# Beispiel (Wie es für Entwickler funktioniert)

WebView2, die neueste Iteration der Web-View-Technologie von Microsoft, basiert auf der Chromium-Engine, derselben Engine, die den beliebten Microsoft Edge-Browser antreibt. Die Fixversion ermöglicht es C#-Entwicklern, Webtechnologien wie Hyper Text Markup Language, CSS und JavaScript direkt in ihre nativen Anwendungen einzubetten. Diese Integration eröffnet eine Welt von Möglichkeiten, von der Anzeige dynamischer Inhalte bis zur Erstellung komplexer Benutzeroberflächen.

IronPDF-Übersicht bietet die Möglichkeit, PDF-Dokumente in C#-Anwendungen zu erzeugen, zu bearbeiten und darzustellen. Ob es um die Konvertierung von Online-Inhalten in PDFs geht oder um die Erstellung von Dokumenten von Grund auf, IronPDF bietet einen unkomplizierten Ansatz für die Handhabung von PDFs neben webbasierten Daten und Schnittstellen.

Dieses Tutorial führt Sie durch die Integration von WebView2 und IronPDF in eine C#-Anwendung. Von der grundlegenden Einrichtung bis hin zu fortgeschrittenen Funktionen werden wir erkunden, wie diese Tools im Tandem verwendet werden können, um die Möglichkeiten Ihrer Anwendung zu erweitern.

Einführung in WebView2

WebView2, das auf dem Chromium-basierten Microsoft Edge-Browser basiert, stellt einen bedeutenden Fortschritt bei der Einbettung von Webinhalten in C#-Anwendungen dar. Diese Technologie ermöglicht es Entwicklern, das gesamte Spektrum des modernen Webs in ihre Windows-Anwendungen einzubinden und so die Leistung, Kompatibilität und Funktionalität zu verbessern.

Der Vorteil von Chromium Edge

Chromium-basiert: Durch die Nutzung derselben Engine wie Microsoft Edge bietet WebView2 eine konsistentere und zuverlässigere Darstellung von Webinhalten im Vergleich zu älteren Webview-Steuerelementen.

Moderne Webstandards: Mit Unterstützung der neuesten Webstandards können Entwickler sicherstellen, dass die Webinhalte in ihren Windows-Anwendungen mit den aktuellen Webtechnologien auf dem neuesten Stand bleiben.

Erste Schritte mit WebView2

Einrichten von WebView2 in C# Projekten

Die Integration von WebView2 in ein C# Projekt ist ein unkomplizierter Prozess. Dazu muss das WebView2 SDK über NuGet, Microsofts Paketmanager für .NET, hinzugefügt werden. Dieses SDK stellt die notwendigen Bibliotheken und Werkzeuge zur Verfügung, um Webinhalte in Ihre Anwendungen mit WebView2 einzubetten.

Webview2 C# Beispiel (So funktioniert es für Entwickler): Abbildung 1 - WebView2

Implementierung von WebView2 in Windows Forms und WPF

WebView2 kann in verschiedenen Arten von C#-Anwendungen genutzt werden, einschließlich Windows Forms (WinForms) und Windows Presentation Foundation (WPF). Jedes Framework hat seine Nuancen in Bezug auf die Implementierung, aber das Kernkonzept bleibt dasselbe: WebView2 fungiert als Container für Webinhalte innerhalb Ihrer Anwendung.

Ein einfaches Beispiel für das Laden von Webinhalten

Sobald WebView2 eingerichtet ist, können Sie damit beginnen, Webseiten in Ihre Anwendung zu laden. Das kann so einfach sein wie die Einstellung der Quell-URL, um eine Webseite anzuzeigen. Hier ist ein einfaches Beispiel für den Anfang:

var webView = new WebView2();
webView.Source = new Uri("https://www.ironpdf.com");
var webView = new WebView2();
webView.Source = new Uri("https://www.ironpdf.com");
Dim webView = New WebView2()
webView.Source = New Uri("https://www.ironpdf.com")
$vbLabelText   $csharpLabel

In diesem Codeschnipsel wird eine neue Instanz von WebView2 erstellt und die IronPDF-Website wird in diese geladen. Dies veranschaulicht, wie WebView2 zum Rendern von Webseiten innerhalb einer C#-Anwendung verwendet werden kann.

Webview2 C# Beispiel (Wie es für Entwickler funktioniert): Abbildung 2 - IronPDF

Einbetten einfacher Webinhalte

Anzeige von HTML, CSS und JS in WebView2

Mit WebView2 können C#-Anwendungen Standard-Webinhalte einbetten und anzeigen. Dazu gehören HTML-Seiten, Cascading Style Sheets für das Styling und JavaScript für die Interaktivität. Die Steuerungsfunktionen ähneln einem in Ihre Anwendung eingebetteten Webbrowser, der Webinhalte so wiedergibt, wie sie in Microsoft Edge erscheinen würden.

Laden von Web-Seiten in WebView2

Die Hauptfunktion von WebView2 ist das Laden und Anzeigen von Webseiten. Dies wird durch die Angabe einer URL oder das direkte Laden von HTML-Inhalten erreicht. Zum Beispiel:

webView.CoreWebView2.Navigate("https://www.ironpdf.com");
webView.CoreWebView2.Navigate("https://www.ironpdf.com");
webView.CoreWebView2.Navigate("https://www.ironpdf.com")
$vbLabelText   $csharpLabel

Dieser Code navigiert das WebView2-Steuerelement zu einer bestimmten Webseite und zeigt sie innerhalb der Anwendung an.

Interaktion mit JavaScript

WebView2 ermöglicht die Interaktion mit JavaScript innerhalb des eingebetteten Webinhalts. Das bedeutet, dass Sie JavaScript-Code von Ihrer C#-Anwendung aus ausführen können und umgekehrt, was dynamische Inhaltsaktualisierungen und reaktionsfähige Benutzeroberflächen ermöglicht.

Anpassen des Webangebots

Mit WebView2 haben Sie die Kontrolle darüber, wie Webinhalte angezeigt werden, und können verschiedene Aspekte wie Größe, Sichtbarkeit und Benutzerinteraktionseinstellungen anpassen. Diese Anpassung ermöglicht die nahtlose Integration der Webinhalte in die native Benutzeroberfläche Ihrer Anwendung.

Integration von WebView2 und IronPDF

IronPDF spezialisiert sich auf die Umwandlung von HTML in PDF und bewahrt die ursprünglichen Layouts und Stile mit Präzision. Diese Fähigkeit ist besonders nützlich für die Erstellung von PDFs aus webbasierenden Inhalten wie Berichten, Rechnungen und Dokumentationen. Es unterstützt die Umwandlung von HTML-Dateien, URLs und sogar rohen HTML-Strings in hochwertige PDF-Dateien.

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim renderer = New ChromePdfRenderer()

		' 1. Convert HTML String to PDF
		Dim htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"
		Dim pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent)
		pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf")

		' 2. Convert HTML File to PDF
		Dim htmlFilePath = "path_to_your_html_file.html" ' Specify the path to your HTML file
		Dim pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath)
		pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf")

		' 3. Convert URL to PDF
		Dim url = "http://ironpdf.com" ' Specify the URL
		Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
		pdfFromUrl.SaveAs("URLToPDF.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

WebView2 und IronPDF gemeinsam nutzen

Die Kombination von WebView2 und IronPDF in einem C# Projekt eröffnet spannende Möglichkeiten. Während WebView2 hervorragend für die Anzeige und Interaktion mit Webinhalten geeignet ist, zeichnet sich IronPDF durch die Konvertierung dieser Inhalte in das PDF-Format aus. Diese Integration ermöglicht es Entwicklern, Anwendungen zu erstellen, die nicht nur Webinhalte anzeigen, sondern auch die Funktionalität bieten, Webinhalte in PDF-Dokumente umzuwandeln.

Erfassen von WebView2-Inhalten mit IronPDF

Das Erstellen einer Windows Forms-Anwendung, die WebView2 enthält, ermöglicht es Benutzern, innerhalb Ihrer Anwendung im Internet zu surfen. Beginnen Sie mit dem Hinzufügen eines WebView2-Steuerelements zu Ihrem Formular. Dieses Steuerelement sollte einen großen Teil des Formulars ausfüllen und ausreichend Platz für das Browsen im Internet bieten. Darüber hinaus sollten Sie Steuerelemente für die Navigation wie Adressleisten und Schaltflächen einbeziehen, um das Surfen zu vereinfachen.

Hinzufügen der PDF-Konvertierungsfunktion

Fügen Sie in Ihr Formular eine Schaltfläche mit der Bezeichnung "In PDF konvertieren" ein Diese Schaltfläche ist der Auslöser für Benutzer, die aktuell angezeigte Webseite mit IronPDF in ein PDF-Dokument zu konvertieren.

IronPDF-Bibliothek installieren

Installation mit NuGet-Paketmanager

Um IronPDF mit Hilfe des NuGet-Paketmanagers in Ihr WebView2-Projekt zu integrieren, gehen Sie folgendermaßen vor:

  1. Öffnen Sie Visual Studio und klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf Ihr Projekt.

  2. Wählen Sie "NuGet-Pakete verwalten..." aus dem Kontextmenü.

  3. Gehen Sie auf die Registerkarte Durchsuchen und suchen Sie nach IronPDF.

  4. Wählen Sie die IronPDF-Bibliothek aus den Suchergebnissen aus und klicken Sie auf die Schaltfläche "Installieren".

  5. Akzeptieren Sie die Aufforderung zu einer Lizenzvereinbarung.

    Wenn Sie IronPDF über die Paketmanager-Konsole in Ihr Projekt einbinden möchten, führen Sie den folgenden Befehl in der Paketmanager-Konsole aus:

Install-Package IronPdf
Install-Package IronPdf
SHELL

Es wird IronPDF in Ihr Projekt holen und installieren.

Installation über die NuGet-Website

Einen detaillierten Überblick über IronPDF, einschließlich seiner Funktionen, Kompatibilität und zusätzlicher Download-Optionen, finden Sie auf der IronPDF-Seite auf der NuGet-Website unter https://www.nuget.org/packages/IronPdf.

Installation über DLL

Alternativ können Sie IronPDF direkt in Ihr Projekt integrieren, indem Sie die DLL-Datei verwenden. Laden Sie die ZIP-Datei, die die DLL enthält, von dieser DLL-Download-Seite herunter. Entpacken Sie die Datei, und binden Sie die DLL in Ihr Projekt ein.

Implementierung der Konvertierungslogik

Wenn der Benutzer auf die Schaltfläche "In PDF konvertieren" klickt, sollte Ihre Anwendung die URL oder den HTML-Inhalt erfassen, der in dem WebView2-Steuerelement angezeigt wird. Nutzen Sie die Möglichkeiten von IronPDF, um diese Webinhalte in eine PDF-Datei zu konvertieren. Hier ist ein Beispiel für einen Ansatz:

  1. Aktuellen Inhalt erfassen: Wenn der Benutzer die Konvertierung startet, rufen Sie den aktuellen Inhalt aus der WebView2-Steuerung ab. Dies kann die URL oder direkt der HTML-Inhalt sein.

  2. PDF mit IronPDF erzeugen: Verwenden Sie IronPDF, um ein PDF aus dem erfassten Webinhalt zu erstellen. Die HtmlToPdf-Klasse kann die aktuelle Webseite in ein PDF-Dokument rendern.

  3. Speichern und Benachrichtigen: Speichern Sie das generierte PDF an einem vordefinierten Ort oder fordern Sie den Benutzer auf, einen Speicherort auszuwählen. Nach dem Speichern der PDF-Datei sollte der Benutzer über die erfolgreiche Konvertierung benachrichtigt werden, möglicherweise über ein Nachrichtenfeld.
private void ConvertToPdfButton_Click(object sender, EventArgs e)
{
    var renderer = new IronPdf.ChromePdfRenderer();
    var pdf = renderer.RenderUrlAsPdf(webView.CoreWebView2.Source.ToString());
    pdf.SaveAs("ConvertedWebPage.pdf");
    MessageBox.Show("PDF conversion successful!");
}
private void ConvertToPdfButton_Click(object sender, EventArgs e)
{
    var renderer = new IronPdf.ChromePdfRenderer();
    var pdf = renderer.RenderUrlAsPdf(webView.CoreWebView2.Source.ToString());
    pdf.SaveAs("ConvertedWebPage.pdf");
    MessageBox.Show("PDF conversion successful!");
}
Private Sub ConvertToPdfButton_Click(ByVal sender As Object, ByVal e As EventArgs)
	Dim renderer = New IronPdf.ChromePdfRenderer()
	Dim pdf = renderer.RenderUrlAsPdf(webView.CoreWebView2.Source.ToString())
	pdf.SaveAs("ConvertedWebPage.pdf")
	MessageBox.Show("PDF conversion successful!")
End Sub
$vbLabelText   $csharpLabel

Hier ist die UI-Ausgabe:

Webview2 C# Beispiel (Wie es für Entwickler funktioniert): Abbildung 3 - Webseiteneinbettung zu PDF-Konvertierung

Wenn Sie auf die Schaltfläche "Konvertieren" klicken, wird das Web in eine PDF-Datei umgewandelt und das folgende Meldungsfenster angezeigt:

Webview2 C# Beispiel (Wie es für Entwickler funktioniert): Abbildung 4 - Umwandlungsbestätigung

Schlussfolgerung

Webview2 C# Beispiel (Wie es für Entwickler funktioniert): Abbildung 5 - Lizenz

Zum Abschluss unserer Erkundung von WebView2 und IronPDF im Bereich der C#-Entwicklung wird deutlich, dass die Synergie zwischen diesen beiden Technologien eine Vielzahl von Möglichkeiten zur Erstellung dynamischer und vielseitiger Anwendungen bietet.

Durch die Integration von WebView2 können Sie fortschrittliche Webtechnologien direkt in Ihre C#-Anwendungen einbetten und so deren Funktionalität und Benutzerfreundlichkeit verbessern. IronPDF ergänzt dies durch die Bereitstellung von Werkzeugen zur Konvertierung dieser webbasierten Schnittstellen und Inhalte in zugängliche PDF-Dokumente, die sich ideal für die Berichterstattung, Dokumentation und den Datenaustausch eignen.

Erleben Sie das volle Potenzial von IronPDF mit einer kostenlosen Testversion von IronPDF und schalten Sie die gesamte Palette an Funktionen mit Lizenzen ab $749 frei.

Chipego
Software-Ingenieur
Chipego hat eine natürliche Fähigkeit zum Zuhören, die ihm hilft, Kundenprobleme zu verstehen und intelligente Lösungen anzubieten. Er trat dem Iron Software-Team 2023 bei, nachdem er einen Bachelor of Science in Informationstechnologie erworben hatte. IronPDF und IronOCR sind die beiden Produkte, auf die sich Chipego konzentriert hat, aber sein Wissen über alle Produkte wächst täglich, da er neue Wege findet, Kunden zu unterstützen. Er genießt die Zusammenarbeit bei Iron Software, da Teammitglieder aus dem gesamten Unternehmen ihre unterschiedlichen Erfahrungen einbringen und so zu effektiven, innovativen Lösungen beitragen. Wenn Chipego nicht an seinem Schreibtisch sitzt, kann man ihn oft bei einem guten Buch oder beim Fußballspielen antreffen.
< PREVIOUS
C# String Split (Wie es funktioniert für Entwickler)
NÄCHSTES >
Fluent Assertions C# (So funktioniert es für Entwickler)