public static IObservable <ColorChangedEvent> OnColorChange( [NotNull] this ColorPickerButton button) { Ensure.Any.IsNotNull(button, nameof(button)); var tracker = button.GetOrCreateNode(NodeName, _ => new ColorPickerButtonEventTracker()); Debug.Assert(tracker != null, "tracker != null"); return(tracker.OnColorChange); }