protected override void OnSourceInitialized(EventArgs e)
        {
            base.OnSourceInitialized(e);

            UserModelPresenter.GetContainer(this).Definition = modelDefinition;
            CopyModelValueProvider copy = new CopyModelValueProvider(modelDefinition, true);

            copy.Update(this, library.Configuration);
        }
        public bool TrySetValue(string identifier, object value)
        {
            if (UserModelPresenter.GetValueProviderCollection(this).TryGet(identifier, out IFieldValueProvider provider))
            {
                return(provider.TrySetValue(value));
            }

            return(false);
        }
 private void TryDisposeFieldValueProviders()
 {
     foreach (IFieldValueProvider presenter in UserModelPresenter.GetValueProviderCollection(this))
     {
         if (presenter is IDisposable disposable)
         {
             disposable.Dispose();
         }
     }
 }
        public LibraryConfigurationWindow(INavigator navigator, IChangeTracker changeTracker, Library library)
            : base(navigator, library)
        {
            Ensure.NotNull(changeTracker, "changeTracker");
            Ensure.NotNull(library, "library");

            UserModelPresenter.SetContainer(this, new ModelDefinitionContainer());
            UserModelPresenter.SetValueProviderCollection(this, new FieldValueProviderCollection());

            InitializeComponent();

            kebClose.Command = new DelegateCommand(Close);

            this.changeTracker   = changeTracker;
            this.library         = library;
            this.modelDefinition = library.ConfigurationDefinition;
        }