CollectionViewSource.Filter Kejadian
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menyediakan logika pemfilteran.
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
Jenis Acara
Contoh
Contoh berikut menunjukkan cara mengatur penanganan aktivitas untuk peristiwa tersebut Filter . Dalam contoh ini, listingDataView
adalah instans dari CollectionViewSource.
listingDataView.Filter += new FilterEventHandler(ShowOnlyBargainsFilter);
AddHandler listingDataView.Filter, AddressOf ShowOnlyBargainsFilter
Berikut ini menunjukkan implementasi contoh ShowOnlyBargainsFilter
penanganan aktivitas filter. Penanganan aktivitas ini menggunakan Accepted properti untuk memfilter AuctionItem
objek yang memiliki CurrentPrice
$25 atau lebih besar.
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
Untuk contoh lengkapnya, lihat Demo Pengikatan Data.
Keterangan
Tampilan dapat menerapkan filter ke koleksi. Ini berarti bahwa meskipun item mungkin ada dalam koleksi, tampilan tertentu dimaksudkan untuk hanya menampilkan subset tertentu dari koleksi lengkap.
Anda dapat menggunakan kejadian ini untuk mengatur penanganan aktivitas untuk menyediakan logika pemfilteran.