public object this[string propertyName] { get { object result; return(_propertyProvider.TryGetPropertyValue(propertyName, out result) ? result : null); } set { _propertyProvider.SetPropertyValue(propertyName, value); OnPropertyChanged(propertyName); //OnPropertyChanged("Item[]"); OnPropertyChanged(string.Format("Item[{0}]", propertyName)); } }
public MainPage() { InitializeComponent(); // Manipulate properties on the Property Provider level provider.SetPropertyValue("Hello", "World"); // manipulate object via 'dynamic' dynamic context = new RuntimeObject(provider); context.FirstName = "Denys"; context.LastName = "Vuika"; context.IsEnabled = true; propertyGrid.SelectedObject = context; }