WPF WebBrowser - Wie Zoom-Inhalte?
Versuchen zu testen, grundlegende browser-Konzepte in der WPF (C#/XAML, .NET 4.0) - WebBrowser-Anwendung. So weit, das problem ist nur programmatisch Zoomen. Hat jemand schon Erfahrung mit dieser?
MSDN-Listen nichts: http://msdn.microsoft.com/en-us/library/system.windows.controls.webbrowser.aspx
Außerdem habe ich versucht verschiedene Sachen wie RenderTransform-Optionen ohne Erfolg. Entweder ist dies nicht möglich oder nicht dokumentiert. Ich bin der Hoffnung, für die letzteren. Beachten Sie, dass ein Windows forms-Lösung ist nicht akzeptabel.
Vielen Dank im Voraus für jede Hilfe,
Beems
InformationsquelleAutor Beems | 2011-02-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vielleicht führen Sie ein javascript wie dieses.
In WPF können wir manipulieren das Dokument. Erstellt habe ich eine Extension Methode für Sie, so können Sie den Zoom:
Verwendung:
Damit dieser code funktioniert: fügen Sie die Microsoft.mshtml .NET Referenz
sorry, ich kann nicht scheinen, um das zu erkennen, wie ein Gültiger namespace. ("mit Microsoft.mshtml.net").
Müssen Sie mit der rechten Maustaste auf das Projekt, Verweise und wählen Sie Verweis Hinzufügen im Menü
Dies nur, zoomt die Seite, nicht den Inhalt. Das Ergebnis dieser Wirkung ist, dass der Inhalt in der rechten/unteren Teil des Bildschirms sein, abgestoßen von den sichtbaren Bereich rechts/unten zum vergrößern oder die zoom > 100% oder größer als 1.0 in diesem Beispiel.
InformationsquelleAutor Tony
Ich verwendet, bits und Stücke aus dieser Antwort https://stackoverflow.com/a/7326179/17822 zu assist mit dem zoom-Problem. Der Schlüssel ist hier die ExecWB-Methode. Der zoom auf dem Windows-Desktop ist nicht 1-1 zu den zoom auf das WebBrowser-Steuerelement. Sie haben zu spielen mit ihm. Der pseudo-code für die Gleichung sieht wie folgt aus:
Beachten Sie, dass Sie eine Referenz benötigen zu SHDocVw.dll die gefunden werden können in der C:\Windows\SysWOW64 für x64-Maschinen und in C:\Windows\System32 für x86-Maschinen.
Dies ist nicht schön, aber es ist die einzige Sache, die ich gefunden habe, kurz ein Upgrade auf http://awesomium.com, dass tatsächlich entspricht, DH Standard-zoom-Einstellungen (die standardmäßig auf der Windows-Desktop-zoom), um WebBrowser-Steuerelement. Beachten Sie auch, dass der Windows-Desktop Zoom existiert nur für Vista, Win 7 und wahrscheinlich 2k8 als auch in der Systemsteuerung --> Anzeige, aber ich nicht überprüfen, Vista oder 2k8. Es ist es nicht für XP (alle service Packs).
Um die Windows-Desktop-Zoom (dies funktioniert auf XP aus irgendeinem Grund) habe ich:
Diese Logik wird in der OnSourceInitialized override für XAML-Fenster.
InformationsquelleAutor Daniel McQuiston
Können Sie sehen, dieses:
http://chriscavanagh.wordpress.com/2010/10/04/a-real-net-4-0-webbrowser/
InformationsquelleAutor Tony