Bagikan melalui


Cara: Menavigasi Melalui Objek dalam Data CollectionView

Tampilan memungkinkan pengumpulan data yang sama ditampilkan dengan cara yang berbeda, bergantung pada pengurutan, pemfilteran, atau pengelompokan. View juga menyediakan konsep penunjuk catatan saat ini dan memungkinkan pemindahan penunjuk. Contoh ini menunjukkan cara mendapatkan objek saat ini serta menavigasi melalui objek dalam pengumpulan data menggunakan fungsionalitas yang disediakan di kelas CollectionView.

Contoh

Dalam contoh ini, myCollectionView adalah objek CollectionView yang merupakan tampilan dari koleksi yang terikat.

Dalam contoh berikut, OnButton adalah penanganan aktivitas untuk tombol Previous dan Next dalam aplikasi, yang merupakan tombol yang memungkinkan pengguna menavigasi pengumpulan data. Perhatikan bahwa properti IsCurrentBeforeFirst dan IsCurrentAfterLast melaporkan apakah penunjuk rekaman saat ini berada di awal atau akhir dari daftar masing-masing, sehingga MoveCurrentToFirst dan MoveCurrentToLast dapat dipanggil sesuai kebutuhan.

Properti CurrentItem dari tampilan diubah menjadi Order untuk mengembalikan item pesanan saat ini dalam kumpulan.

//OnButton is called whenever the Next or Previous buttons
//are clicked to change the currency
  private void OnButton(Object sender, RoutedEventArgs args)
  {
      Button b = sender as Button;

      switch (b.Name)
      {
          case "Previous":
              myCollectionView.MoveCurrentToPrevious();

              if (myCollectionView.IsCurrentBeforeFirst)
              {
                  myCollectionView.MoveCurrentToLast();
              }
              break;

          case "Next":
              myCollectionView.MoveCurrentToNext();
              if (myCollectionView.IsCurrentAfterLast)
              {
                  myCollectionView.MoveCurrentToFirst();
              }
              break;

          o = myCollectionView.CurrentItem as Order;
          // TODO: do something with the current Order o
      }
  }
'OnButton is called whenever the Next or Previous buttons
'are clicked to change the currency
  Private Sub OnButton(ByVal sender As Object, ByVal args As RoutedEventArgs)
      Dim b As Button = TryCast(sender, Button)

      Select Case b.Name
          Case "Previous"
              myCollectionView.MoveCurrentToPrevious()

              If myCollectionView.IsCurrentBeforeFirst Then
                  myCollectionView.MoveCurrentToLast()
              End If

          Case "Next"
              myCollectionView.MoveCurrentToNext()
              If myCollectionView.IsCurrentAfterLast Then
                  myCollectionView.MoveCurrentToFirst()
              End If
              Exit Select

          o = TryCast(myCollectionView.CurrentItem, Order)
          ' TODO: do something with the current Order o 
      End Select
  End Sub

Lihat juga