11 Stimmen

Wie kann ich einen Benutzer HTML/WebSite-Inhalte durchsuchen lassen, ohne den Browser zu starten (ich brauche einen Inline-Browser)?

Ich erstelle eine Anwendung für Windows Phone 7, mit der man HTML-Inhalte offline lesen kann. Gibt es eine Möglichkeit, einen Inline-Browser oder ein HTML-Anzeigeelement anzuzeigen?

16voto

Ben Gracewood Punkte 1088

Die WebBrowser Steuerelement können Sie beliebiges HTML anzeigen.

Es gibt zwei Methoden auf der Website WebBrowser Steuerelement, das Sie zur Anzeige von HTML verwenden können:

  1. Navigate() zeigt den Inhalt einer Datei an, die sich unter der angegebenen URL befindet. Diese Datei kann in IsolatedStorage oder auf einem Server.
  2. NavigateToString() wird die von Ihnen angegebene HTML-Zeichenkette anzeigen.

In Ihrem Fall würde ich vermuten, dass Sie eine WebClient Objekt, um die Webseite in den Offline-Speicher herunterzuladen, dann wird das Navigate Methode, um sie anzuzeigen.

Allerdings ist der Nutzen von NavigateToString ist, dass man die Zeichenkette auf dem Weg dorthin zurechtstutzen kann, um einige coole (oder essentielle) Dinge zu tun, wie z.B. die Seite so zu gestalten, dass sie perfekt mit dem aktuellen Telefonthema übereinstimmt, oder alle Link-Klicks abzufangen und sie im externen Browser aufpoppen zu lassen (andernfalls werden sie im selben WebBrowser Kontrolle).

Ich habe die Details des Stylings und der Link-Klickerei dokumentiert aquí .

4voto

Matt Lacey Punkte 64983

Ja, es gibt eine WebBrowser Kontrolle in Microsoft.Phone.Controls

Wenn Sie dann Ihre (Offline-)Dateien in IsolatedStorage können Sie die Datei dann über einen Aufruf wie diesen aus dem Code heraus anzeigen:

webBrowser1.Navigate(new Uri("offline-file-name.html", UriKind.Relative));

Zu beachtende Punkte:

  • Sie können Verzeichnisse innerhalb eines isolierten Speichers verwenden. Geben Sie einfach den gesamten Pfad in der Uri an.

  • Wenn Sie zwischen Offline-Seiten navigieren, müssen alle Pfade relativ sein.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X