Я нашел один Julian Bucknall на его блоге здесь - http://www.boyet.com/Articles/PriorityQueueCSharp3.html
, Мы изменили его немного так, чтобы низкоприоритетные объекты на очереди в конечном счете 'пузырились' к вершине со временем, таким образом, они не перенесли бы исчерпания ресурсов.
Вы можете сделать это с помощью IValueConverter:
public class NegatingConverter : IValueConverter
{
public object Convert(object value, ...)
{
return !((bool)value);
}
}
и использовать один из них в качестве конвертера вашей привязки.
К сожалению, вы не можете напрямую выполнять операторы, такие как отрицание, в выражении Binding ... Я бы рекомендовал использовать ValueConverter для инвертирования логического значения.