/// <summary> /// Creates and returns a controller for the defined dictionary and supplied instance controller. /// </summary> public DictionaryController <TModelClass, TKey, TValue> CreateController(MEntityInstanceController InstanceController) { var Result = new DictionaryController <TModelClass, TKey, TValue>(InstanceController); Result.DictionaryDefinitor = this; Result.IsEditableNow = this.IsEditControlled; Result.IsValid = true; if (this.ItemsSourceGetter != null) { Result.CanCollectionBeEmpty = this.CanCollectionBeEmpty; Result.EmptyCollectionTitle = this.EmptyCollectionTitle; Result.ExternalItemsSourceGetter = this.ItemsSourceGetter; // This could be later changed for a per-instance source. Result.ExternalItemsSourceSelectedValuePath = this.ItemsSourceSelectedValuePath; } return(Result); }