Subscribe RSS Join our Facebook Group Follow us on Twitter!
in Search

Aly Sangadji Blog

Hanya bagi ~ bagi

Basic navigation in Windows Phone

Windows phone application karena dasarnya adalah Silverlight, kita dapat menggunakan page navigation untuk berpindah ke halaman yang berbeda. Banyak hal yang dapat digunakan dengan navigation page ini, selain berpindah halaman kita juga dapat mempengaruhi halaman berikutnya dari code yang teradapat pada halaman pertama. pada post ini saya akan memberikan contoh berpindah halaman dengan memperngaruhi halaman tersebut dengan warna dan perpindahan data memanfaatkan query pada navigation.

berpindah halaman dapat digunakan code :

//pada page pertama
this.NavigationService.Navigate(new Uri("/PageTwo.xaml", UriKind.Relative));
            e.Complete();
            e.Handled = true;
//pada page kedua
this.NavigationService.GoBack();
            e.Complete();
            e.Handled = true;

dasar dari code diatas adalah berpindah halaman dari page pertama ke page kedua :

image  image

pada halaman pertama, textblock “go page 2” ditanamkan method yang isinya perintah untuk melakukan navigation service ke url page 2, dan pada “go to page one” dihalaman 2 ditamkan method navgation service tetapi pada halaman ini menggunakan GoBack, akan kembali pada halaman sebelumnya.

pada contoh ini, terdapat juga method :

protected override void OnManipulationStarted(ManipulationStartedEventArgs args)
        {
            ContentPanel.Background = new SolidColorBrush(
            Color.FromArgb(255, (byte)rand.Next(255),
                (byte)rand.Next(255),
                (byte)rand.Next(255)));
            base.OnManipulationStarted(args);
        }

method tersebut akan melakukan perubahan warna secara random pada content panel jika kita melakukan “tap” pada layar windows phone. Sekarang bagaimana memberikan sebuah nilai pada halaman kedua dari halaman pertama? misalnya, kita mengisi nama dan usia pada halaman pertama, dan hasilnya akan ditampilkan pada halaman kedua. dasar dari code untuk perpindahan data :

//pada page pertama
this.NavigationService.Navigate(new Uri("/PageTwo.xaml?parameter1=value&parameter2=value", UriKind.Relative));
//pada page kedua, membuat method onNavigatedTo untuk menerima parameter tersebut, misalnya :
protected override void OnNavigatedTo(NavigationEventArgs e)
{
 
            string Parameter1 = NavigationContext.QueryString["parameter1"];
            string Parameter2 = NavigationContext.QueryString["parameter2"];
}

Dari dasar code diatas, sudah dapat membuat perpindahan nilai variabel dari halaman pertama ke halaman berikutnya, nah…sekarang pada project ini akan diperlihatkan caranya :

//code pada halaman pertama
private void button1_Click(object sender, RoutedEventArgs e)
        {
             if (txtNama.Text != "" && txtUsia.Text != "")
            {
                string Nama = txtNama.Text;
                string usia = txtUsia.Text;
                this.NavigationService.Navigate(new Uri("/PageTwo.xaml?nama="+Nama+"&usia="+usia, UriKind.Relative));
             }
            else
            {
                MessageBox.Show("Isi nama dan usia");
            }
        }
 
//code pada halaman kedua
protected override void OnNavigatedTo(NavigationEventArgs e)
        {
 
            string Nama = NavigationContext.QueryString["nama"];
            string usia = NavigationContext.QueryString["usia"];
 
            nama.Text = Nama;
            Usia.Text = usia;
            
            base.OnNavigatedTo(e);
 
        }
image  image 

Source code bisa didowload disini, Semoga bermanfaat.. Open-mouthed smile

482 Views, 0 Comment(s), Published on: 12-26-2011 9:15 by alysangadji to Aly Sangadji Blog
| More
Filed under: ,

Comments

No Comments

About alysangadji

Tetap Berbagi Meskipun hanya "Hello Word"