using System; using System.ComponentModel; namespace OpenTap.Addin.Annotation { /// /// /// public class DynamicSelectAttribute : Attribute, IAnnotation, INotifyPropertyChanged { #region OnPropertyChanged /// /// Standard PropertyChanged event object. /// public event PropertyChangedEventHandler PropertyChanged; /// /// Triggers the PropertyChanged event. /// /// string name of which property has been changed. public void OnPropertyChanged(string propertyName) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); UserInput.NotifyChanged(this, propertyName); } #endregion /// /// /// public string SourceName { get; set; } /// /// /// public string DisplayName { get; set; } /// /// /// public string BindingName { get; set; } /// /// /// public DynamicSelectAttribute(string sourceName) { this.SourceName = sourceName; } /// /// /// public DynamicSelectAttribute(string sourceName, string displayName, string bindingName) { this.SourceName = sourceName; this.DisplayName = displayName; this.BindingName = bindingName; } /// /// /// public void Read(object source) { } /// /// /// public void Write(object source) { } } }