Как я могу позволить пользователю просматривать содержимое HTML / веб-сайта без запуска браузера (нужен встроенный браузер)?

Я создаю приложение на Windows Phone 7, которое позволяет людям читать автономный HTML-контент. Есть ли способ показать встроенный браузер или элемент управления просмотром HTML?

2 ответов


на WebBrowser control позволяет отображать произвольный HTML.

есть два метода на WebBrowser control вы можете использовать для отображения HTML:

  1. Navigate() отобразит содержимое файла, расположенного по указанному URL-адресу. Этот файл может быть в IsolatedStorage или на сервере.
  2. NavigateToString() отобразит строку html, которую вы ей даете.

в вашем случае я предполагаю, что вы используете WebClient объект для загрузки веб-страницы в автономном режиме хранение, затем Navigate метод для его отображения.

однако, преимущество NavigateToString это то, что вы можете munge строку на пути, чтобы сделать некоторые интересные (или существенные) вещи, как стиль страницы, так что он идеально соответствует текущей теме телефона, или поймать все ссылки кликов и сделать их поп во внешнем браузере (в противном случае они загружаются в том же самом WebBrowser control).

Я задокументировал детали стиля и ссылки clickery здесь.


Да, есть WebBrowser управление в Microsoft.Phone.Controls

если вы сохраните свои (автономные) файлы в IsolatedStorage затем вы можете просмотреть файл с помощью такого вызова из кода:

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

Примечание:

  • вы можете использовать каталоги в изолированном хранилище. Просто укажите весь путь в Uri.

  • при навигации между автономными страницами все пути должны быть относительными.