none
Crear botón a otra página XAML RRS feed

  • Pregunta

  • Hola que tal, estoy intentando que en mi aplicación exista un botón siempre presente que redirija a otra página, así como lo hace un ítem de un menú, pero yo lo que quisiera es eso en un botón fijo, sea cual sea el elemento correcto para lograrlo. Ya que mis conocimientos de C# son muy bajos y no soy un experto en este tipo de lenguajes, si alguien tiene la amabilidad de darme una solución por favor que considere que no se demasiado. Saludos y gracias
    viernes, 5 de diciembre de 2014 9:22

Respuestas

  • Deberías tener algo cómo esto:

    <shell:ApplicationBar x:Key="AppBar1" IsVisible="True" IsMenuEnabled="True" Mode="Default" BackgroundColor="{StaticResource BackGroundAppBarGeneric}" ForegroundColor="{StaticResource ForeGroundAppBarGeneric}">
    	<shell:ApplicationBarIconButton x:Name="Refresh"  IconUri="/Images/refresh.png" Text="refrescar" Click="Refresh_Click"/>
    </shell:ApplicationBar>


    En tu xaml. Y algo tal que así en tu C#:

    private void Refresh_Click(object sender, EventArgs e)
            {
                NavigationService.Navigate(new Uri("/Views/RefreshPage.xaml", UriKind.Relative));
            }

    Espero que te ayude cómo guía el ejemplo. (La applicationbar la puedes asignar desde el diseñador y añadir los botones también desde el mismo, si te resulta más sencillo que declararla con xaml). 

    Un saludo. 


    Ruben Fernandez - http://www.rfsouto.com

    • Marcado como respuesta Joel2014 viernes, 5 de diciembre de 2014 20:56
    viernes, 5 de diciembre de 2014 10:35

Todas las respuestas

  • Buenas, 

    Primero comentanos que tipo de proyecto estás haciendo, para saber que solución darte (winRT o Silverlight), pero te adelanto que la mejor forma o cómo yo lo pondría es con una opción en la barra inferior con su icono. Yo creo que dada la finalidad que le quieres dar lo mejor es usar la ApplicationBar y listo. 

    Dime qué proyecto has seleccionado y te paso un ejemplo al respecto. 

    Un saludo. 


    Ruben Fernandez - http://www.rfsouto.com

    viernes, 5 de diciembre de 2014 10:04
  • Muchas gracias por la respuesta. Es una aplicación de Appstudio con un buen lavado de cara encima y entre lo que le quiero agregar está eso. Por lo tanto creo que es Silverlight, si no me equivoco. Supuse que sería mas sencillo desde la barra de aplicación (con la contra de que en dicha aplicación no pensaba colocarla), pero desconozco su dificultad. Supuse que si el botón llama a un método de alguna forma se puede navegar a otra página, pero intenté con varias ideas y no tuve éxito (En el mejor de los casos se cerraba la aplicación al tocar el botón)
    viernes, 5 de diciembre de 2014 10:24
  • Deberías tener algo cómo esto:

    <shell:ApplicationBar x:Key="AppBar1" IsVisible="True" IsMenuEnabled="True" Mode="Default" BackgroundColor="{StaticResource BackGroundAppBarGeneric}" ForegroundColor="{StaticResource ForeGroundAppBarGeneric}">
    	<shell:ApplicationBarIconButton x:Name="Refresh"  IconUri="/Images/refresh.png" Text="refrescar" Click="Refresh_Click"/>
    </shell:ApplicationBar>


    En tu xaml. Y algo tal que así en tu C#:

    private void Refresh_Click(object sender, EventArgs e)
            {
                NavigationService.Navigate(new Uri("/Views/RefreshPage.xaml", UriKind.Relative));
            }

    Espero que te ayude cómo guía el ejemplo. (La applicationbar la puedes asignar desde el diseñador y añadir los botones también desde el mismo, si te resulta más sencillo que declararla con xaml). 

    Un saludo. 


    Ruben Fernandez - http://www.rfsouto.com

    • Marcado como respuesta Joel2014 viernes, 5 de diciembre de 2014 20:56
    viernes, 5 de diciembre de 2014 10:35
  • ¡¡¡Muchísimas gracias!!! Anduvo perfecto
    viernes, 5 de diciembre de 2014 20:55
  • Podré hacerte una ultima molestia? También estoy intentando con una app universal que creo que usa winRT en vez de Silverlight (tu sabrás mejor que yo), lo que ocurre es que cuando quise usar el mismo código en el C# me encontré con que no funciona, y aún cambiando algunas cosas a ciegas dice que no hay ninguna sobrecarga correspondiente al método, y nuevamente me encuentro estancado con no encontrar la forma correcta de realizarlo. Gracias

    • Editado Joel2014 sábado, 6 de diciembre de 2014 5:50
    sábado, 6 de diciembre de 2014 5:49
  • Sí, cómo te comentaba, no es el mismo fwk y por tanto cambian unas cuantas cosas. 

    Parece un trastorno pero en el futuro lo agradeceremos cuando las dos plataformas converjan. 

    Este es el tutorial que debes seguir para poder realizar tu barra en una aplicación con fwk winrt:

    Quickstart: adding app bars

    Espero que te sirva de ayuda ;) 


    Ruben Fernandez - http://www.rfsouto.com

    sábado, 6 de diciembre de 2014 11:49
  • Gracias nuevamente por tu respuesta. No encontré lo que buscaba pero en fin, creo que debo resignarme con mi botón para la app que mas lo necesitaba (Lleva un navegador incluido en una pagina, y descubrí que con Silverlight y "phone:WebBrowser" no funciona la web que necesito y solo lo hace para 8.1 con "WebView", pero ahora no tengo mi botón para dirigir a esa página).
    lunes, 8 de diciembre de 2014 5:28