Hi I have two predicates. And I wonder if it is possible to join them together somehow into one? First:
Predicate<object> viewFilter = f =>
{
ExternalUser u = f as ExternalUser;
return u.AgentName.ToLower().StartsWith(agentName.ToLower());
};
Second:
Predicate<object> viewFilter = f =>
{
ExternalUser u = f as ExternalUser;
return u.ExternalLogin.ToLower().StartsWith(login.ToLower());
};
And this is how joined predicate should look like.
Predicate<object> viewFilter = f =>
{
ExternalUser u = f as ExternalUser;
return u.ExternalLogin.ToLower().StartsWith(login.ToLower()) && u.AgentName.ToLower().StartsWith(agentName.ToLower());
};
I need this for WPF data grid filter where grid source is ICollectionView. So after I've created my predicate I set it into filter like this:
private void FilterByLogin(ICollectionView view, string login)
{
Predicate<object> viewFilter = f =>
{
ExternalUser u = f as ExternalUser;
return u.ExternalLogin.ToLower().StartsWith(login.ToLower());
};
view.Filter = viewFilter;
}