Freigeben über


CollectionViewSource.Filter Ereignis

Definition

Stellt eine Filterlogik bereit.

public:
 event System::Windows::Data::FilterEventHandler ^ Filter;
public event System.Windows.Data.FilterEventHandler Filter;
member this.Filter : System.Windows.Data.FilterEventHandler 
Public Custom Event Filter As FilterEventHandler 

Ereignistyp

Beispiele

Im folgenden Beispiel wird gezeigt, wie ein Ereignishandler für das Filter Ereignis festgelegt wird. In diesem Codebeispiel ist listingDataView eine Instanz von CollectionViewSource.

listingDataView.Filter += new FilterEventHandler(ShowOnlyBargainsFilter);
AddHandler listingDataView.Filter, AddressOf ShowOnlyBargainsFilter

Nachfolgend sehen Sie die Implementierung des beispielhaften ShowOnlyBargainsFilter-Filterereignishandlers. Dieser Ereignishandler verwendet die Accepted-Eigenschaft zum Filtern von AuctionItem-Objekten, bei denen CurrentPrice $25 oder mehr beträgt.

private void ShowOnlyBargainsFilter(object sender, FilterEventArgs e)
{
    AuctionItem product = e.Item as AuctionItem;
    if (product != null)
    {
        // Filter out products with price 25 or above
        if (product.CurrentPrice < 25)
        {
            e.Accepted = true;
        }
        else
        {
            e.Accepted = false;
        }
    }
}
Private Sub ShowOnlyBargainsFilter(ByVal sender As Object, ByVal e As FilterEventArgs)
    Dim product As AuctionItem = CType(e.Item, AuctionItem)
    If Not (product Is Nothing) Then
        'Filter out products with price 25 or above
        If product.CurrentPrice < 25 Then
            e.Accepted = True
        Else
            e.Accepted = False
        End If
    End If
End Sub

Das vollständige Beispiel finden Sie unter Demo zur Datenbindung.

Hinweise

Ansichten können einen Filter auf eine Sammlung anwenden. Dies bedeutet, dass zwar ein Element in der Auflistung vorhanden ist, aber eine bestimmte Ansicht nur eine bestimmte Teilmenge der vollständigen Auflistung anzeigen soll.

Sie können dieses Ereignis verwenden, um einen Ereignishandler festzulegen, der Filterlogik bereitstellt.

Gilt für: