Как я могу позволить пользователю просматривать содержимое HTML / веб-сайта без запуска браузера (нужен встроенный браузер)?
Я создаю приложение на Windows Phone 7, которое позволяет людям читать автономный HTML-контент. Есть ли способ показать встроенный браузер или элемент управления просмотром HTML?
2 ответов
на WebBrowser
control позволяет отображать произвольный HTML.
есть два метода на WebBrowser
control вы можете использовать для отображения HTML:
-
Navigate()
отобразит содержимое файла, расположенного по указанному URL-адресу. Этот файл может быть вIsolatedStorage
или на сервере. -
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.
при навигации между автономными страницами все пути должны быть относительными.