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));
        }
Beispiel #5
0
 public bool Equals(IUniqueData other)
 {
     return(this.UniqueDataID.Equals(other.UniqueDataID));
 }