public TEditor GetEditor <TEditor>(IUniqueData data) where TEditor : DataEditorForm { DataEditorForm foundForm = editorList.Find( f => f.GetEditorData <IUniqueData>().Equals(data)); if (foundForm != null) { foundForm.Focus(); return((TEditor)foundForm); } else { //ConstructorInfo ctor = typeof(TEditor).GetConstructor(new Type[0]); //if (ctor == null) //{ // throw new Exception( // "Could not create new data editor of type '" // + typeof(TEditor).Name + // "' because no empty constructor exists."); //} //TEditor editor = (TEditor)ctor.Invoke(new object[0]); TEditor editor = Activator.CreateInstance <TEditor>(); editorList.Add(editor); return(editor); } }
public void SetEditorData(IUniqueData editorData) { this.editorData = editorData; OnEditorDataChanged(EventArgs.Empty); }
public void SetUpdateMode(IUniqueData editorData) { this.editorMode = DataEditorMode.Update; SetEditorData(editorData); }
public dynamic EnrichUniqueData(IUniqueData uniqueData) { var enricher = new UniqueDataResourceEnricher(_linkProvider, _mapper, _linkGenerator, _httpContext); return(enricher.Enrich(uniqueData)); }
public bool Equals(IUniqueData other) { return(this.UniqueDataID.Equals(other.UniqueDataID)); }