Desenvolvimento - Silverlight

Recebendo valores QueryString no Silverlight

Muitas vezes nos deparamos com um cenário onde existe a necessidade de passar um valor de uma página para outra. Uma das soluções para isto é o uso da QueryString. No Silverlight não é diferente.

por Lucas Defacio



Introdução

Muitas vezes nos deparamos com um cenário onde existe a necessidade de passar um valor de uma página para outra. Uma das soluções para isto é o uso da QueryString. No Silverlight não é diferente.

Imagine um cenário onde você precisa passar o Id de um produto para uma página que contém uma animação Silverlight sobre aquele produto. Neste artigo irei mostrar como receber estes valores através do Silverlight.

Recebendo valores QueryString

Inicialmente, criaremos um objeto do tipo TextBlock e atribuiremos o valor txtSaida para a propriedade x:Name. Neste TextBlock receberemos o valor passado por QueryString. O Quadro 1 ilustra nosso arquivo Page.xaml.

    <Grid x:Name="LayoutRoot" Background="White">

        <TextBlock x:Name="txtSaida"  VerticalAlignment="Center"

         HorizontalAlignment="Center" FontSize="16"  />

    </Grid>

Quadro 1: layout do arquivo Page.xaml.

No método Page(), gerado automaticamente para inicializar os componentes, verificaremos se existe algum valor passado por QueryString. Caso exista, atribuiremos este valor para a propriedade Text de nosso txtSaida, como demonstrado no Quadro 2.

public Page()

        {

            InitializeComponent();

            if (HtmlPage.Document.QueryString.Count > 0)

            {

                txtSaida.Text = HtmlPage.Document.QueryString["valor"].ToString();

            }

        }

Quadro 2: Recebendo o valor passado por QueryString.

Nota: é necessário referênciar o namespace using System.Windows.Browser; para poder utilizar a classe HtmlPage.

Nossa aplicação Silverlight já pode receber valores QueryString. Para testar nossa aplicação, vamos passar um valor para a página que hospeda o Silverlight, conforme Quadro 3.

http://localhost:62313/SilverlightQueryStringTestPage.aspx?valor=linha%20de%20codigo

Quadro 3: passando valores QueryString pela Url.

Conclusão

Receber e manipular valores QueryString é muito simples e útil. Desta forma podemos criar animações diferenciadas com extrema facilidade.

Lucas Defacio

Lucas Defacio - Estudante de Sistemas de Informação, atua como designer e desenvolvedor em Rich Interface Applications (RIA) no Flextronics Institute of Technology (FIT) em Sorocaba/SP. É Moderador do fórum de Silverlight no Portal MSDN Brasil e fundador do portal Brasilverlight (http://www.brasilverlight.com.br/), busca aprimorar a experiência dos usuários com sites interativos e promover a tecnologia Silverlight.