CollectionViewSource.Filter Evento
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Ofrece una lógica para el filtrado.
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
Tipo de evento
Ejemplos
En el ejemplo siguiente se muestra cómo establecer un controlador de eventos para el Filter evento. En el ejemplo, listingDataView
es una instancia de CollectionViewSource.
listingDataView.Filter += new FilterEventHandler(ShowOnlyBargainsFilter);
AddHandler listingDataView.Filter, AddressOf ShowOnlyBargainsFilter
A continuación se muestra la implementación del controlador de eventos del filtro ShowOnlyBargainsFilter
de ejemplo. Este controlador de eventos usa la propiedad Accepted para filtrar los objetos AuctionItem
que tienen un valor CurrentPrice
de 25 USD o superior.
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
Para obtener el ejemplo completo, consulte Demostración de enlace de datos.
Comentarios
Las vistas pueden aplicar un filtro a una colección. Esto significa que, aunque un elemento puede existir en la colección, una vista determinada está pensada para mostrar solo un subconjunto determinado de la colección completa.
Puede usar este evento para establecer un controlador de eventos para proporcionar lógica de filtrado.