如何:透過資料 CollectionView 中的物件巡覽

檢視會根據排序、篩選或分組,以不同方式檢視相同的資料收集。 檢視也會提供目前的記錄指標概念,並啟用移動指標。 這個範例示範如何使用 類別中提供的功能,取得目前的 物件,以及巡覽資料收集中的 CollectionView 物件。

範例

在此範例中, myCollectionViewCollectionView 系結集合檢視的物件。

在下列範例中, OnButton 是應用程式中 和 PreviousNext 按鈕的事件處理常式,這些是允許使用者巡覽資料收集的按鈕。 請注意, IsCurrentBeforeFirstIsCurrentAfterLast 屬性會報告目前的記錄指標是否分別來到清單的開頭和結尾, MoveCurrentToFirst 以便適當地呼叫 和 MoveCurrentToLast

CurrentItem 視的 屬性會轉換成 Order ,以傳回集合中的目前順序專案。

//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

另請參閱