Freigeben über


Gewusst wie: Navigieren durch die Objekte in einer Datenauflistungsansicht

Mit Ansichten kann eine Datenerfassung abhängig von Sortierung, Filterung oder Gruppierung auf verschiedene Weise angezeigt werden. Ansichten stellen auch einen Zeiger auf den aktuellen Datensatz bereit und ermöglichen das Verschieben des Zeigers. In diesem Beispiel wird gezeigt, wie das aktuelle Objekt abgerufen wird und wie Sie mithilfe der von der CollectionView-Klasse bereitgestellten Funktionalität durch die Objekte in einer Datenerfassung navigieren.

Beispiel

In diesem Beispiel ist myCollectionView ein CollectionView-Objekt, das eine Ansicht für eine gebundene Auflistung ist.

Im folgenden Beispiel ist OnButton ein Ereignishandler für die Previous-Schaltfläche und die Next-Schaltfläche in einer Anwendung. Hierbei handelt es sich um Schaltflächen, mit denen der Benutzer in der Datenerfassung navigieren kann. Beachten Sie, dass die IsCurrentBeforeFirst-Eigenschaft und die IsCurrentAfterLast-Eigenschaft berichten, ob der Zeiger für den aktuellen Datensatz am Anfang bzw. am Ende der Liste angekommen ist, sodass wie erforderlich entweder MoveCurrentToFirst oder MoveCurrentToLast aufgerufen werden kann.

Die CurrentItem-Eigenschaft der Ansicht wird in eine Order umgewandelt, um das Element für die aktuelle Reihenfolge in der Erfassung zurückzugeben.

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

Siehe auch

Aufgaben

Gewusst wie: Sortieren von Daten in einer Ansicht

Gewusst wie: Filtern von Daten in einer Ansicht

Gewusst wie: Sortieren und Gruppieren von Daten mit einer Ansicht in XAML

Konzepte

Übersicht über Datenbindung

Weitere Ressourcen

Gewusst-wie-Themen zur Datenbindung