internal static WeakDataContextChangedListener CreateIfNecessary(object source, IDataContextChangedListener listener) { if (!(source is UIElement)) { return null; } return new WeakDataContextChangedListener(source as UIElement, listener); }
private WeakDataContextChangedListener(UIElement source, IDataContextChangedListener listener) { this.mentor = source; this.mentor.DataContextChanged += new DataContextChangedEventHandler(this.MentorDataContextChanged); this.weakListener = new WeakReference(listener); }
internal WeakDataContextChangedListener(UIElement mentor, IDataContextChangedListener listener) { this.mentor = mentor; this.mentor.DataContextChanged += this.MentorDataContextChanged; this.weakListener = new WeakReference <IDataContextChangedListener>(listener); }