Olá pessoal, tudo bom?
Segue uma dica rápida sobre o envio de parâmetros entre páginas da APP. A técnica é bastante simples e, quem já desenvolve para web, irá perceber que a mesma é muito similar à passagem de parâmetros via QueryString do ASP.NET.
A imagem abaixo representa uma situação teste, onde temos do lado esquerdo uma página do WP que o usuário irá informar um valor a ser enviado para a página do lado direito, que por sua vez, deverá recepcionar esse parâmetro e exibi-lo na tela.
Na página onde se envia o parâmetro, temos um botão com a inscrição “Enviar Valor para Próxima Página”. Vejamos a implementação do evento click deste botão em C#:
... private void Button_Click(object sender, RoutedEventArgs e) { string uri = string.Format("/Pagina2.xaml?nomeParametro={0}", txtValor.Text); //Caso você queira passar mais de um parâmtro, basta montar a string uri com o seguinte formato: //string uri = "/Pagina2.xaml?nome=Eduardo H. Rizo&twitter=@eduardorizo&blog=http://www.eduardorizo.com.br //Repare que a separação para novos parâmetros é feita através do caracter & //e que no caso da string de exemplo temos os parâmetros nome, twitter e blog NavigationService.Navigate(new Uri(uri, uriKind.Relative)); } ...
Já na página onde iremos recepcionar o(s) parâmetro(s), temos que sobrescrever o método OnNavigatedTo para que nele possamos receber os valores enviados pela página anterior. Segue o código em C#:
... protected override void OnNavigatedTo(NavigationEventArgs e) { if (NavigationContext.QueryString["nomeParametro"] != null) txtParametro.Text = NavigationContext.QueryString["nomeParametro"]; base.OnNavigatedTo(e); } ...
Como disse anteriormente, o exemplo é bem simples, mas demonstra como passar e recepcionar valores/parâmetros entre as páginas da APP.
Grande abraço !
Eduardo Henrique Rizo
Post Relacionado:
[twitter-follow screen_name=’eduardorizo’ show_count=’yes’]
Pingback: Free: Curso Windows Phone – Vários tópicos | Blog do Eduardo H. Rizo
muito obrigado, era isso que eu precisava, graças a você
Bacana, basta curtir o Blog e divulgar aos amigos.
[]s
Eduardo H. Rizo
mmmmm, eu não podia deixar que eu envio o que eu tenho até agora: a ListBox tem 2 TextBlock e um botão, pressionar o botão quero enviar txtFecha y txtName e dados, mas não sei como enviar selecione:
Você quer enviar mais de um parâmetro?
Se sim, observe nos comentários do código que está no post pois lá tem a explicação de como fazer.
É isso?
ok, mas o problema aqui não é como selecionar ou dados que está dentro da caixa de listagem, eu só preciso disso, eu espero que você saiba como
O último comentário está errado: o problema não é como selecionar ou dados que está dentro da ListBox, isso é tudo que eu preciso, eu espero para saber como
Boa noite!
Me mande como você construiu o ListBox que te falo como recuperar os valores dele.
[]s
Eduardo H. Rizo
Bom dia,
Poderia criar um artigo com exemplo de como abrir uma imagem que está hospedada em um site na sua aplicação windows phone 8?
Boa tarde, tudo bom?
Creio que o você solicitou eu já tenha feito. De uma olhada no post Curso Windows Phone – Como exibir imagens a partir de URLs da Internet para verificar se é o que você precisa.
Abraços,
Eduardo H. Rizo
OI Eduardo,
Poderia me informar se já publicou algo a respeito de desenvolver para windows phone 8 usando a biblioteca Agility Pack ? caso negativo, poderia criar algum posts sobre esse tema?
Olá Pedro, tudo bom?
Não tenho nenhum exemplo sobre isso, mas dei uma pesquisadinha no Youtube e encontrei vários vídeos a respeito.
Abraços,
Eduardo H. Rizo
Oi, Eduardo
Quero agradecer pela a ajuda do blog, e tirar uma dúvida, mais uma vez.
Caso eu queria passar mais de um parâmetro que vão ser definidos por variáveis, como faço?
Eu fiz isso aqui:
string uri = string.Format(“/Pages/EditarMA.xaml?NomeAP={0}&N1AP={1}&N2AP={2}&N3AP={3}&N4AP={4}&PFAP={5}&IDA={6}”, NA, N1A, N2A, N3A, N4A, PFA, IDA);
Fiz isso porque verifiquei que se eu deixar {0} em todos ele vai mandar por parâmetro a primeira variável que está na frente, aí por isso fiz assim, mas quando coloco {1}… Ele não envia parâmetro algum… Poderia me ajudar?
Bom dia Daniel, tudo bom?
Do jeito como você fez está certo, será que suas variáveis possuem valores?
De que jeito você está fazendo para recepcionar os parâmetros?
Abraços,
Eduardo H. Rizo
Boa noite Eduardo,
Eu tenho uma aplicação onde em uma pagina possui vários checkbox, gostaria de saber como passar para outra pagina os checkbox que foram selecionados. Eu tentei usar igual você mostra no exemplo porem não funcionou.
Eduardo, tudo bom?
Tua dúvida está em como recuperar os valores do checkbox ou em relação a como passar os valores de uma página para outra?
Eduardo H. Rizo
Primeiro vou te explicar como funciona meu APP (talvez ajude), Tenho um APP onde o usuário insere dados como nome, local, data e hora, e na próxima tela aparece para ele uma lista com varias opções que são os checkbox, onde ele vai escolher essas opções, e o sistema vai fazer um calculo. Ate ai esta funcionando perfeitamente, o problema e que eu não consigo passar o resultado desse calculo para uma tela, só consigo fazer isso usando Messagebox.Show, que ele exibe o resultado em uma mensagem, mas eu preciso que esse resultado desse calculo apareça em uma tela, onde nessa tela também aparece o nome, local, data e hora inseridos inicialmente, e por fim o sistema envia esse “convite” por sms. Então resumindo minha duvida e como passar o resultado desse calculo para uma tela e não por meio de mensagem, ou seja ao meu ver, envolve tanto recuperação de valores do checkbox quanto passagem de valores.
Espero que possa me ajudar!