public object this[string index] { get { return(Get(index)?.Value); } set { var item = Get(index); if (item == null) { item = new ValueItem() { Name = index }; Items.Add(item); } if (item.Value != TransformToString(value)) { item.Value = TransformToString(value); } OnValueChangedEvent(item); } }
protected virtual void OnValueChangedEvent(ValueItem item) { ValueChangedEvent?.Invoke(this, item); }