<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Rodrigo Díaz Concha &#187; WebBrowser</title>
	<atom:link href="http://rdiazconcha.com/tag/webbrowser/feed/" rel="self" type="application/rss+xml" />
	<link>http://rdiazconcha.com</link>
	<description>Silverlight y XAML en Español para México, Latinoamérica y España</description>
	<lastBuildDate>Thu, 02 Feb 2012 20:54:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Silverlight 4 Beta &#8211; Brocha HTML</title>
		<link>http://rdiazconcha.com/2009/12/silverlight-4-beta-brocha-html/</link>
		<comments>http://rdiazconcha.com/2009/12/silverlight-4-beta-brocha-html/#comments</comments>
		<pubDate>Fri, 11 Dec 2009 03:49:43 +0000</pubDate>
		<dc:creator>Rodrigo</dc:creator>
				<category><![CDATA[Silverlight 4]]></category>
		<category><![CDATA[HtmlBrush]]></category>
		<category><![CDATA[WebBrowser]]></category>

		<guid isPermaLink="false">http://rdiazconcha.com/?p=521</guid>
		<description><![CDATA[En un artículo anterior dimos a conocer el nuevo control WebBrowser, incluído como parte de Silverlight 4 Beta, el cual nos permite mostrar contenido HTML en nuestras aplicaciones Fuera del Navegador, siendo ese contenido un HTML creado de manera dinámica o incluso alguna página Web externa.&#160; En este artículo detallaremos el elemento HtmlBrush que nos [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://rdiazconcha.com/?p=462" target="_blank">En un artículo anterior</a> dimos a conocer el nuevo control WebBrowser, incluído como parte de Silverlight 4 Beta, el cual nos permite mostrar contenido HTML en nuestras aplicaciones Fuera del Navegador, siendo ese contenido un HTML creado de manera dinámica o incluso alguna página Web externa.&#160; En este artículo detallaremos el elemento HtmlBrush que nos brinda la oportunidad de ‘pintar’ nuestros elementos con el contenido cargado en el control WebBrowser.</p>
<h3>El proyecto</h3>
<p>Iniciaremos creando un nuevo proyecto de Silverlight 4 en Visual Studio 2010 Beta 2 y aceptaremos la opción predeterminada de crear una aplicación Web para probar la aplicación.</p>
<h3>Clase HtmlBrush</h3>
<p>La clase HtmlBrush es una clase derivada de TileBrush y nos permite usar un control WebBrowser con contenido HTML como fuente para poder pintar cualquier propiedad de tipo Brush en los elementos de Xaml.&#160; La clase tiene la propiedad <strong>SourceName</strong> la&#160; cual indica el nombre del control WebBrowser que deseamos utilizar como fuente.&#160; Asimismo, expone el método<strong> SetSource()</strong> para que programáticamente podamos establecer la fuente sobre este tipo de brocha.&#160; El siguiente fragmento de código muestra la utilización más básica de esta brocha en Xaml:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:9ce6104f-a9aa-4a17-a79f-3a39532ebf7c:a893273a-5968-47fc-9ecd-622461e849d2" class="wlWriterEditableSmartContent">
<div style="border: #000080 1px solid; color: #000; font-family: 'Courier New', Courier, Monospace; font-size: 10pt">
<div style="background-color: #ffffff; max-height: 300px; overflow: auto; padding: 2px 5px; white-space: nowrap"><span style="color:#ff0000">&#8230;</span><br /> <span style="color:#ff0000"></span><span style="color:#0000ff">&lt;</span><span style="color:#a31515">Ellipse.Fill</span><span style="color:#0000ff">&gt;</span><br /> &#160;&#160;&#160;&#160;<span style="color:#ff0000"></span><span style="color:#0000ff">&lt;</span><span style="color:#a31515">HtmlBrush</span><span style="color:#ff0000"> x</span><span style="color:#0000ff">:</span><span style="color:#ff0000">Name</span><span style="color:#0000ff">=&quot;htmlbrush&quot;</span><br /> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="color:#ff0000"> SourceName</span><span style="color:#0000ff">=&quot;wb&quot; /&gt;</span><br /> <span style="color:#ff0000"></span><span style="color:#0000ff">&lt;/</span><span style="color:#a31515">Ellipse.Fill</span><span style="color:#0000ff">&gt;</span><br /> <span style="color:#ff0000">&#8230;</span></div>
</p></div>
</p></div>
<p>El código anterior establece la propiedad <strong>SourceName</strong> al WebBrowser deseado, en este caso identificado con la variable <em>wb</em>.</p>
<h3>HtmlBrush.Redraw()</h3>
<p>La clase expone el método públic Redraw() el cual obliga a la brocha a dibujarse asimisma ya que no lo hace de manera automática.&#160; Por este motivo, si tenemos como contenido del WebBrowser alguna página Web que incluya alguna animación o video necesitaremos ejecutar este método de manera recurrente, tal vez a través de un DispatcherTimer.&#160; El siguiente fragmento de código muestra dicha técnica:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:9ce6104f-a9aa-4a17-a79f-3a39532ebf7c:1da42b36-a6d0-4774-be51-ccbf39f56ee0" class="wlWriterEditableSmartContent">
<div style="border: #000080 1px solid; color: #000; font-family: 'Courier New', Courier, Monospace; font-size: 10pt">
<div style="background-color: #ffffff; max-height: 300px; overflow: auto; padding: 2px 5px;"><span style="color:#008000">//Crea un timer para redibujar la brocha cada medio segundo</span><br /> <span style="color:#2b91af">DispatcherTimer</span> <span style="color:#800000">timer</span> = <span style="color:#0000ff">new</span> <span style="color:#2b91af">DispatcherTimer</span>() { <span style="color:#800000">Interval</span> = <span style="color:#2b91af">TimeSpan</span>.<span style="color:#800000">FromMilliseconds</span>(<span style="color:#a52a2a">500</span>) };<br /> <span style="color:#800000">timer</span>.<span style="color:#800000">Tick</span> += (<span style="color:#800000">s</span>, <span style="color:#800000">a</span>) =&gt; <span style="color:#800000">htmlbrush</span>.<span style="color:#800000">Redraw</span>();&#160;&#160;<span style="color:#008000">//Obliga a la brocha a dibujarse asimisma</span><br /> <span style="color:#800000">timer</span>.<span style="color:#800000">Start</span>();</div>
</p></div>
</p></div>
<p>Cabe mencionar que esta brocha está disponible únicamente en Aplicaciones Fuera del Navegador, ya que ese es uno de los requisitos para el control WebBrowser.</p>
<h3>Resultado</h3>
<p>La siguiente figura muestra la aplicación aquí descrita finalizada, en donde podemos observar que la elipse del lado derecho es ‘pintado’ por medio de la brocha de tipo HtmlBrush.&#160; Asimismo, la aplicación incluye un control de tipo Slider enlazado a una Proyección en Perspectiva, para poder corroborar que el comportamiento de esta clase es similar al resto de brochas ya conocidas en la plataforma.</p>
<p><a href="http://rdiazconcha.com/wp-content/uploads/2009/12/image2.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://rdiazconcha.com/wp-content/uploads/2009/12/image_thumb2.png" width="504" height="321" /></a></p>
<p>Puedes descargar el código <a href="http://rdiazconcha.com/Files/Demo.SL4.HtmlBrush.rar" target="_blank">aquí</a></p>
<p>Puedes ver el demo en vivo <a href="http://rdiazconcha.com/demos/SL4_HtmlBrush/Demo.SL4.HtmlBrushTestPage.aspx" target="_blank">aquí</a> (requiere Silverlight 4 y tener la aplicación Fuera del Navegador)</p>
]]></content:encoded>
			<wfw:commentRss>http://rdiazconcha.com/2009/12/silverlight-4-beta-brocha-html/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Silverlight 4 Beta &#8211; Control WebBrowser</title>
		<link>http://rdiazconcha.com/2009/11/silverlight-4-beta-control-webbrowser/</link>
		<comments>http://rdiazconcha.com/2009/11/silverlight-4-beta-control-webbrowser/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 03:46:49 +0000</pubDate>
		<dc:creator>Rodrigo</dc:creator>
				<category><![CDATA[Silverlight 4]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[WebBrowser]]></category>

		<guid isPermaLink="false">http://rdiazconcha.com/?p=462</guid>
		<description><![CDATA[El control WebBrowser nos permite incluir contenido HTML dentro de nuestras aplicaciones de Silverlight Fuera del Navegador: una de las grandes características ausentes en la versión de Silverlight 3.&#160; En este artículo veremos a detalle su funcionalidad y su modelo de programación presentes en Silverlight 4.
El proyecto
Iniciemos creando un nuevo proyecto de Silverlight 4 con [...]]]></description>
			<content:encoded><![CDATA[<p>El control WebBrowser nos permite incluir contenido HTML dentro de nuestras aplicaciones de Silverlight Fuera del Navegador: una de las grandes características ausentes en la versión de Silverlight 3.&#160; En este artículo veremos a detalle su funcionalidad y su modelo de programación presentes en <a href="http://silverlight.net/getstarted/silverlight-4-beta/" target="_blank">Silverlight 4</a>.</p>
<h3>El proyecto</h3>
<p>Iniciemos creando un nuevo proyecto de Silverlight 4 con Visual Studio 2010 Beta 2.&#160; A este proyecto le pondremos el nombre de Demo.SL4.WebBrowser y aceptaremos las opciones por default de agregar un proyecto de Web para prueba.&#160; A LayoutRoot en MainPage.xaml le agregaremos una instancia de WebBrowser, quedando el código de la siguiente manera:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:9ce6104f-a9aa-4a17-a79f-3a39532ebf7c:a44d9fff-5de7-4f18-9171-8ba8aed84921" class="wlWriterEditableSmartContent">
<div style="border: #000080 1px solid; color: #000; font-family: 'Courier New', Courier, Monospace; font-size: 10pt">
<div style="background-color: #ffffff; max-height: 300px; overflow: auto; padding: 2px 5px; white-space: nowrap"><span style="color:#0000ff">&lt;</span><span style="color:#a31515">Grid</span><span style="color:#ff0000"> x</span><span style="color:#0000ff">:</span><span style="color:#ff0000">Name</span><span style="color:#0000ff">=&quot;LayoutRoot&quot;</span><span style="color:#ff0000"> Background</span><span style="color:#0000ff">=&quot;White&quot;&gt;</span><br /> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="color:#ff0000"></span><span style="color:#0000ff">&lt;</span><span style="color:#a31515">WebBrowser</span><span style="color:#0000ff"> /&gt;</span><br /> &#160;&#160;&#160;&#160;<span style="color:#ff0000"></span><span style="color:#0000ff">&lt;/</span><span style="color:#a31515">Grid</span><span style="color:#0000ff">&gt;</span></div>
</p></div>
</p></div>
<p>Si ejecutamos la aplicación en este momento el resultado será el siguiente:</p>
<p><a href="http://rdiazconcha.com/wp-content/uploads/2009/11/image5.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://rdiazconcha.com/wp-content/uploads/2009/11/image_thumb5.png" width="404" height="379" /></a> </p>
<p>El control mostrará el mensaje “HTML is disabled” (HTML está deshabilitado).&#160; Esto es debido a que el control WebBrowser está pensado para únicamente trabajar en aplicaciones Fuera del Navegador (por lo menos es así como trabaja en esta versión Beta de Silverlight 4).</p>
<blockquote><p>El control WebBrowser únicamente funciona en Aplicaciones Fuera del Navegador.</p>
</blockquote>
<p>Por lo anterior, configuraremos nuestra aplicación Silverlight para que pueda ejecutar Fuera del Navegador.&#160; Esto lo logramos seleccionando la opción adecuada en las propiedades del proyecto:</p>
<p><a href="http://rdiazconcha.com/wp-content/uploads/2009/11/image6.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://rdiazconcha.com/wp-content/uploads/2009/11/image_thumb6.png" width="244" height="31" /></a>&#160;</p>
<p>Además que agregaremos más Xaml que represente el resto de controles que usaremos en este ejemplo.&#160; </p>
<p>Por otro lado debemos aclarar que el control WebBrowser únicamente puede mostrar contenido que está en el mismo dominio que la aplicación XAP (mismo subdominio, dominio, puerto y protocolo).&#160; No obstante, podemos usar un elemento IFRAME para mostrar contenido que sea de otro dominio.</p>
<h3>Desplegando contenido</h3>
<p>Existen varios mecanismos para desplegar contenido en el control WebBrowser.</p>
<h4>Método NavigateToString()</h4>
<p>La manera más sencilla de mostrar contenido dentro del control WebBrowser es ejecutar su método<strong> NavigateToString()</strong> el cual recibe como parámetro una cadena que represente el HTML que deseamos mostrar (tal vez construido de manera manual, o sacado del XAP, o descargado de manera asíncrona con WebClient, etc.).&#160; En nuestro ejemplo tendremos un método llamado CargarHtml() que genere una cadena de HTML y posteriormente que sirve como fuente para el WebBrowser.&#160; El código será el siguiente:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:9ce6104f-a9aa-4a17-a79f-3a39532ebf7c:fd7b77e3-cc7b-43da-801d-13a194b37336" class="wlWriterEditableSmartContent">
<div style="border: #000080 1px solid; color: #000; font-family: 'Courier New', Courier, Monospace; font-size: 10pt">
<div style="background-color: #ffffff; max-height: 300px; overflow: auto; padding: 2px 5px;"><span style="color:#0000ff">void</span> <span style="color:#800000">CargarHtml</span>()<br /> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{<br /> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="color:#0000ff">string</span> <span style="color:#800000">html</span> = <span style="color:#ff0000">&quot;&lt;html&gt;&lt;h1&gt;Demostraci&#243;n&lt;/h1&gt;&lt;h2&gt;Silverlight 4 Beta&lt;/h2&gt;&lt;p&gt;Esta es una demostraci&#243;n de c&#243;mo podemos mostrar contenido HTML usando el m&#233;todo NavigateToString()&lt;/p&gt;&lt;/html&gt;&quot;</span>;</p>
<p> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="color:#800000">wb</span>.<span style="color:#800000">NavigateToString</span>(<span style="color:#800000">html</span>);<br /> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}</div>
</p></div>
</p></div>
<p>Y el resultado:</p>
<p><a href="http://rdiazconcha.com/wp-content/uploads/2009/11/image7.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://rdiazconcha.com/wp-content/uploads/2009/11/image_thumb7.png" width="404" height="347" /></a> </p>
<h4>Método Navigate()</h4>
<p>Otra manera de desplegar contenido HTML es establecer la propiedad Source del WebBrowser en XAML o usar el método <strong>Navigate()</strong>. En nuestro ejemplo agregaremos un nuevo archivo llamado Contenido.htm en el sitio de orígen de nuestra aplicación Silverlight (carpeta ClientBin por default). El archivo Contenido.htm tendrá el HTML que deseamos mostrar dentro del control WebBrowser.&#160; Como comentamos anteriormente, si deseamos mostrar contenido que viene de otros dominios debemos mostrarlo dentro de un IFRAME.&#160; Contenido.htm mostrará la página de búsqueda de Twitter dentro del control WebBrowser en nuestra aplicación Silverlight:</p>
<p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:9ce6104f-a9aa-4a17-a79f-3a39532ebf7c:ab5a9f0b-1fec-4351-9b87-c7093918b6f6" class="wlWriterEditableSmartContent">
<div style="border: #000080 1px solid; color: #000; font-family: 'Courier New', Courier, Monospace; font-size: 10pt">
<div style="background-color: #ffffff; max-height: 300px; overflow: auto; padding: 2px 5px; white-space: nowrap"><span style="color:#0000ff">&lt;!</span><span style="color:#800000">DOCTYPE</span> <span style="color:#ff0000">html</span> <span style="color:#ff0000">PUBLIC</span> <span style="color:#0000ff">&quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;</span> <span style="color:#0000ff">&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;</span><br /> <span style="color:#0000ff">&lt;</span><span style="color:#800000">html</span> <span style="color:#ff0000">xmlns</span><span style="color:#0000ff">=&quot;http://www.w3.org/1999/xhtml&quot;&gt;</span><br /> <span style="color:#0000ff">&lt;</span><span style="color:#800000">head</span><span style="color:#0000ff">&gt;</span><br /> &#160;&#160;&#160;&#160;<span style="color:#0000ff">&lt;</span><span style="color:#800000">title</span><span style="color:#0000ff">&gt;&lt;/</span><span style="color:#800000">title</span><span style="color:#0000ff">&gt;</span><br /> <span style="color:#0000ff">&lt;/</span><span style="color:#800000">head</span><span style="color:#0000ff">&gt;</span><br /> <span style="color:#0000ff">&lt;</span><span style="color:#800000">body</span><span style="color:#0000ff">&gt;</span><br /> &#160;&#160;&#160;&#160;<span style="color:#0000ff">&lt;</span><span style="color:#800000">iframe</span> <span style="color:#ff0000">id</span><span style="color:#0000ff">=&quot;contenido&quot;</span> <span style="color:#ff0000">src</span><span style="color:#0000ff">=&quot;http://search.twitter.com&quot;</span> <span style="color:#ff0000">width</span><span style="color:#0000ff">=&quot;100%&quot;</span> <span style="color:#ff0000">height</span><span style="color:#0000ff">=&quot;600px&quot;</span> <span style="color:#0000ff">/&gt;</span><br /> <span style="color:#0000ff">&lt;/</span><span style="color:#800000">body</span><span style="color:#0000ff">&gt;</span><br /> <span style="color:#0000ff">&lt;/</span><span style="color:#800000">html</span><span style="color:#0000ff">&gt;</span></div>
</p></div>
</p></div>
</p>
<p><a href="http://rdiazconcha.com/wp-content/uploads/2009/11/image8.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://rdiazconcha.com/wp-content/uploads/2009/11/image_thumb8.png" width="504" height="331" /></a> </p>
<h3>Comunicación entre WebBrowser y el contenido HTML</h3>
<p>Podemos tener comunicación bi-direccional entre el control WebBrowser en Silverlight y la página o contenido que está mostrando.</p>
<h4>Método InvokeScript()</h4>
<p>El método InvokeScript() permite la invocación de una función declarada en la página que haya cargado el control WebBrowser.&#160; A nuestra página Contenido.htm le agregaremos una función de búsqueda sobre el sitio de Twitter.&#160; Para esto agregaremos algunos controles en nuestra aplicación: un TextBox para que el usuario pueda escribir la cadena deseada y un Button para ejecutar efectivamente el método InvokeScript().</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:9ce6104f-a9aa-4a17-a79f-3a39532ebf7c:7d3fb425-dc32-42db-95b3-9def324ae249" class="wlWriterEditableSmartContent">
<div style="border: #000080 1px solid; color: #000; font-family: 'Courier New', Courier, Monospace; font-size: 10pt">
<div style="background-color: #ffffff; max-height: 300px; overflow: auto; padding: 2px 5px; white-space: nowrap"><span style="color:#0000ff">&lt;</span><span style="color:#800000">script</span> <span style="color:#ff0000">type</span><span style="color:#0000ff">=&quot;text/javascript&quot;&gt;</span><br /> &#160;&#160;&#160;&#160;<span style="color:#0000ff">function</span> buscar(cadena) {<br /> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="color:#0000ff">var</span> url = <span style="color:#800000">&quot;http://search.twitter.com/search?q=&quot;</span> + cadena;<br /> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document.getElementById(<span style="color:#800000">&quot;contenido&quot;</span>).src = url;<br /> &#160;&#160;&#160;&#160;}<br /> <span style="color:#0000ff">&lt;/</span><span style="color:#800000">script</span><span style="color:#0000ff">&gt;</span></div>
</p></div>
</p></div>
<p>y el resultado:</p>
<p><a href="http://rdiazconcha.com/wp-content/uploads/2009/11/image9.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://rdiazconcha.com/wp-content/uploads/2009/11/image_thumb9.png" width="504" height="396" /></a> </p>
<h4>window.external.Notify()</h4>
<p>La función Notify() estará disponible en el objeto window.external cuando usemos WebBrowser.&#160; Su objetivo es mandar mensajes al control, y cuando eso sucede, se disparará el evento <strong>ScriptNotify. </strong>&#160; En los argumentos de este evento encontraremos la propiedad Value que representa el valor establecido como parámetro en window.external.Notify().&#160; En este ejemplo invocaremos window.external.Notify en el evento body.onload() para enviar como cadena “Silverlight” al WebBrowser. El evento ScriptNotify se disparará y es en donde obtendremos la cadena que posteriormente pondremos en el TextBox.</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:9ce6104f-a9aa-4a17-a79f-3a39532ebf7c:f50d0fc2-bd6c-44ff-9d2f-27ba5a31af29" class="wlWriterEditableSmartContent">
<div style="border: #000080 1px solid; color: #000; font-family: 'Courier New', Courier, Monospace; font-size: 10pt">
<div style="background-color: #ffffff; max-height: 300px; overflow: auto; padding: 2px 5px; white-space: nowrap"><span style="color:#800000">wb</span>.<span style="color:#800000">ScriptNotify</span> += (<span style="color:#800000">s</span>, <span style="color:#800000">a</span>) =&gt;<br /> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{<br /> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="color:#800000">txtCadena</span>.<span style="color:#800000">Text</span> = <span style="color:#800000">a</span>.<span style="color:#800000">Value</span>;<br /> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;};</div>
</p></div>
</p></div>
<p>&#160;</p>
<h4>Evento LoadCompleted</h4>
<p>El control WebBrowser expone el evento <strong>LoadCompleted</strong> el cual se disparará cuando el contenido efectivamente haya finalizado en cargarse por primera vez, es decir, cuando el método Navigate() haya ejecutado o cuando se establece la propiedad Source.&#160; En nuestro ejemplo lo utilizaremos para crear una <em>notificación</em> (característica nueva en Silverlight 4) para avisarle al usuario que la carga de la página ha finalizado.</p>
<p><a href="http://rdiazconcha.com/wp-content/uploads/2009/11/image10.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://rdiazconcha.com/wp-content/uploads/2009/11/image_thumb10.png" width="404" height="116" /></a> </p>
<h3>Resumen</h3>
<p>El control WebBrowser nos permite cargar contenido HTML dentro de las Aplicaciones Fuera del Navegador.&#160; El contenido a cargar deberá estar en el mismo dominio que la aplicación, no obstante si deseamos hospedar contenido HTML de otros dominios deberemos usar un elemento IFRAME.&#160; Asimismo, el control permite interacción con las funciones de script presentes en el contenido y viceversa; siendo de esta manera una excelente opción para la construcción de poderosas aplicaciones que requieran interactuar con HTML.</p>
<p>Puedes descargar el código <a href="http://rdiazconcha.com/Files/Demo.SL4.WebBrowser.rar" target="_blank">aquí</a></p>
<p>Puedes ver el demo en vivo <a href="http://rdiazconcha.com/demos/SL4_WebBrowser/Demo.SL4.WebBrowserTestPage.aspx" target="_blank">aquí</a> (requiere Silverlight 4)</p>
]]></content:encoded>
			<wfw:commentRss>http://rdiazconcha.com/2009/11/silverlight-4-beta-control-webbrowser/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

