void IValueProvider.DetachConsumer(IValueConsumer consumer) { if (this.consumers.Contains(consumer)) { this.consumers.Remove(consumer); this.ValueChanged -= consumer.InputValueChanged; } }
void IValueProvider.AttachConsumer(IValueConsumer consumer) { if (!this.consumers.Contains(consumer)) { this.consumers.Add(consumer); this.ValueChanged += consumer.InputValueChanged; } }