다음을 통해 공유


방법: 데이터 수집 뷰의 개체 탐색

뷰를 사용하면 정렬, 필터링 또는 그룹화에 따라 다양한 방식으로 같은 데이터 수집을 볼 수 있습니다. 또한 뷰는 현재 레코드 포인터 개념을 제공하고 포인터를 이동할 수 있게 해줍니다. 이 예제에서는 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 
      }
  }

참고 항목

작업

방법: 뷰의 데이터 정렬

방법: 뷰에서 데이터 필터링

방법: XAML에서 뷰를 사용하여 데이터 정렬 및 그룹화

개념

데이터 바인딩 개요

기타 리소스

데이터 바인딩 방법 항목