Silverlight WebBrowser - открыть локальный файл? - PullRequest
2 голосов
/ 27 октября 2010

Наше приложение Silverlight должно показывать пользователю предварительный просмотр HTML-страниц, которые оно генерирует динамически, поэтому мы хотим использовать WebBrowser (или нечто подобное, как RadHtmlPlaceholder Telerik), чтобы показать эти страницы. Проблема состоит в том, что HTML содержит ссылки на другие локальные файлы, такие как изображения, флэш-объекты, CSS и файлы javascript. CSS и javascript могут быть встроены в HTML, но я не нашел способа встраивать изображения. Нечто простое, подобное этому, просто не работает:

Создание файла HTML и файла изображения в изолированном хранилище выполнимо, но я не могу получить путь к созданному файлу HTML для передачи в WebBrowser.Navigate (uri).

Чтение содержимого файла HTML и вызов WebBrowser.NavigateToString (string) покажет страницу, но не любые связанные изображения или сценарии.

Связывание с онлайн-источниками не вариант, так как приложению необходимо работать в автономном режиме (то есть вне браузера), и производительность была бы намного выше, если бы изображения и объекты Flash могли кэшироваться локально.

Итак, есть ли способ в Silverlight показать в WebBrowser элемент управления локальный HTML-файл, содержащий изображение из локальной файловой системы, или это невозможно?

Спасибо, Джеймс

1 Ответ

0 голосов
/ 29 октября 2010

Функции System.IO, встроенные в OOB, предназначены только для чтения и записи в локальные каталоги документов. Пока все там, вы можете использовать это с повышенным доверием. Кроме того, использование зарегистрированного COM-объекта с AutomationFactory является единственным другим способом доступа к файлам в любом месте системы. file: // C: / path to file.html - это URI для отображения файла из локальной системы файлов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...