Tiago Barbosa

Gadgets, Silverlight, WPF, Surface, XNA, Windows Phone 7, Azure...

Aceder ao conteúdo de uma div em Silverlight

Num projecto recente tive a necessidade de criar um gadget em Silverlight que recebia informação textual de uma fonte externa ao Silverlight.

Aqui existiam algumas formas de o fazer:

 

  • Através de um ficheiro xml 
  • Através de um webservice
  • Através de uma div no HTML
  • Entre outras...

 

Como nós queríamos manter o código simples escolhemos a terceira opção. Isto pode ser feito de uma maneira bastante simples.

O que eu fiz foi então o seguinte:

 

  • Criei uma div no HTML com o conteúdo que pretendia passar para o Silverlight e escondi esta div

 

<div id="a_minha_div" style="display=none"> conteúdo </div>

 

  • Na mainPage.xaml.cs acedi ao conteúdo da minha div

 

HtmlElement div = HtmlPage.Document.GetElementById("a_minha_div");

String conteudo = div.getProperty("innerHtml").toString();

 

Mais um pequeno tutorial com informação valiosa...pode dar muito jeito com coisas simples. Em casos mais complexos é aconselhável a utilização de javascript.