Share via


HOW TO:透過資料 CollectionView 中的物件巡覽

根據排序、篩選或群組而定,可以透過檢視,以不同的方式檢視相同的資料集合。 檢視也提供目前記錄指標的概念,也可以移動指標。 這個範例顯示如何使用 CollectionView 類別所提供的功能,取得目前物件以及巡覽資料集合中的所有物件。

範例

在此範例中,myCollectionView 是 CollectionView 物件,該物件為繫結集合的檢視。

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

檢視的 CurrentItem 屬性會轉型為 Order,以傳回集合中目前的順序項目。

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

請參閱

工作

HOW TO:排序檢視中的資料

HOW TO:篩選檢視中的資料

HOW TO:使用 XAML 排序和分組資料

概念

資料繫結概觀

其他資源

資料繫結 HOW TO 主題