CollectionViewSource.Filter Událost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje logiku filtrování.
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
Event Type
Příklady
Následující příklad ukazuje, jak nastavit obslužnou rutinu Filter události pro událost. V tomto příkladu listingDataView
je instance CollectionViewSource.
listingDataView.Filter += new FilterEventHandler(ShowOnlyBargainsFilter);
AddHandler listingDataView.Filter, AddressOf ShowOnlyBargainsFilter
Následující příklad ukazuje implementaci ukázkové ShowOnlyBargainsFilter
obslužné rutiny události filtru. Tato obslužná rutina Accepted události používá vlastnost k odfiltrování AuctionItem
objektů, které mají CurrentPrice
hodnotu 25 USD nebo vyšší.
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
Úplný příklad najdete v tématu Ukázka datové vazby.
Poznámky
Zobrazení můžou na kolekci použít filtr. To znamená, že i když v kolekci může existovat položka, má určité zobrazení zobrazit pouze určitou podmnožinu celé kolekce.
Tuto událost můžete použít k nastavení obslužné rutiny události pro poskytnutí logiky filtrování.