my_dictionary.Where(p => p.Any(v => v.Value.IsValid())
.ToDictionary(p=> p.Key,
p=> p.Value.Where(x => x.Value.IsValid());
Get Only the Items that have a true in the Value, then only get the items that are true into the new dictonary.
Filter then create the dictonary