quarta-feira, 25 de fevereiro de 2009
Código Fonte como HTML
Uma grande ajuda na hora de usar um tutorial de internet é poder copiar diretamente o código ou pelo menos ver o fonte exatamente como fica na IDE.
O grande problema é que se copiarmos diretamente o fonte da IDE para o editor WYSIWYG da web a formatação fica toda perdida, e muitas vezes vemos que o criador coloca uma imagem do código, neste caso impossibilitando uma cópia fácil.
Pois bem, foram nas minhas andanças pelos blogs dos grandões da MSDN que me deparei com o CopySourceAsHtml. Este Add-in para Visual Studio adiciona ao menu de contexto a opção de fazer uma cópia do código fonte como Html.
Ao colar o código ele estará todo formatado com código html e ficará praticamente igual ao código na IDE. É esta ferramenta que tenho usado nos meus últimos posts e facilita bastante a vida do criador do post e do leitor também.
Mais algumas maravilhas do cinto de utilidades de Scott Hanselman's podem ser encontradas aqui.
segunda-feira, 2 de fevereiro de 2009
Silverlight: Interoperabilidade
Mais um exemplo de Silverlight pode ser conferido aqui. E esse quase acertei no Design. Neste exemplo mostro como é possível interagir com a página HTML diretamente de dentro do Silverlight. Da mesma forma que podemos fazer com que o Silverlight responda a eventos disparados na página HTML.
Nesse caso, estou apenas escrevendo e lendo dentro do innerHTML de uma div na página através dos métodos da classe ScriptObject GetProperty e SetProperty. De dentro do Silverlight associo um evento de um botão HTML comum e digo que o Silverlight passará a responder a esse evento.
Como podemos ver a forma como o Silverlight interage com a página através de código gerenciado torna a vida de nós desenvolvedores muito mais fácil.
public HtmlElement HtmlDiv { get; set; }
public HtmlElement HtmlButton { get; set; }
public Page()
{
// Required to initialize variables
InitializeComponent();
this.HtmlDiv =
HtmlPage.Document.GetElementById("myDiv");
this.HtmlButton =
HtmlPage.Document.GetElementById("btnId");
this.HtmlButton.AttachEvent(
"onclick",
new EventHandler<HtmlEventArgs>(ToSilverlight_OnClick));
}
public string DivInnerHTML
{
get
{
return this.HtmlDiv.GetProperty("innerHTML").ToString();
}
set
{
this.HtmlDiv.SetProperty("innerHTML", value);
}
}
Assinar:
Postagens (Atom)