2010-10-03 2 views

ответ

6

Попробуйте эту ссылку для стартеров: http://www.wintellect.com/CS/blogs/jprosise/archive/2009/12/22/silverlight-4-s-new-html-hosting-support.aspx

Вот соответствующая часть:

Еще одна из новых возможностей, которые Silverlight 4 приносит платформа является возможность размещения содержимого HTML внутри Silverlight управление. Эта поддержка не ограничивается статическим HTML-контентом; содержимое может быть интерактивным и включать сценарий. Это может быть даже Flash-контент или контент, который включает в себя другие элементы управления Silverlight.

Чтобы разместить HTML-контент в Silverlight, вы можете использовать элемент управления WebBrowser или HtmlBrush. Один из способов отображения содержимого HTML является запустить контроль WebBrowser и указать его к URL-адресу:

<WebBrowser x:Name="WebBrowserControl" Source="http://www.bing.com" /> 

Другой способ сделать это позвонить NavigateToString и передать строку содержания в управления WebBrowser:

WebBrowserControl.NavigateToString("<h1>Hello, Silverlight</h1>"); 

HTML хостинг не доступна в браузере приложений (это относится и к ), и если OOB не имеет повышенных разрешений , он может отображать только контент, который поступает из того же домена , что и приложение Silverlight. Тем не менее, вы можете использовать немного трюк для отображения содержимого междоменное в OOBs, которые работают без повышенных разрешений, просто передать IFRAME ориентации удаленного контента на NavigateToString:

WebBrowserControl.NavigateToString("<iframe src=\"http://www.bing.com\" style=\"width: 100%; height: 100%\"></iframe>"); 

Вы можете оказать HTML-контент с помощью HtmlBrush. Следующий XAML фрагмент рисует прямоугольник с содержанием извлеченного из Bing:

<WebBrowser x:Name="WebBrowserControl" Source="http://www.bing.com" /> 
<Rectangle> 
    <Rectangle.Fill> 
    <HtmlBrush SourceName="WebBrowserControl" /> 
    </Rectangle.Fill> 
</Rectangle> 

Одно различия между WebBrowser и HtmlBrush является то, что бывший отображает «живет» содержание, в то время как последние не делает. Другое отличие заключается в том, что HtmlBrush может иметь к нему примененные преобразования, в то время как WebBrowser не может. Для потрясающих визуальных эффектов, связанных с HTML-контентом, например головоломкой HTML , демонстрацией в PDC, вы, вероятно, окажетесь с помощью HtmlBrush. Для отображения живого интерактивного контента вы найдете WebBrowser более полезным.

Один из самых классных элементов управления WebBrowser заключается в том, что вы можете использовать свой метод InvokeScript для вызова функций JavaScript в содержимом, размещенном элементом управления.И наоборот, JavaScript, размещенный внутри элемента управления WebBrowser, может использовать window.external.Notify для повышения ScriptNotify события, которые могут обрабатываться на C#.

2

Вы можете использовать управление HtmlBrush или webbrowser.

Смежные вопросы