PropertyChanged使用基类的,各个类不在自己定义

This commit is contained in:
艾竹
2023-04-10 23:08:14 +08:00
parent 429d7b1e24
commit ce2e44fe49
7 changed files with 53 additions and 55 deletions

View File

@@ -137,12 +137,20 @@ namespace AIStudio.Wpf.DiagramDesigner
}
}
/// <summary>
/// 该拷贝不完整,只适应于工具栏使用
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="s"></param>
/// <returns></returns>
public static T Mapper<T>(T s) where T : SelectableViewModelBase
{
if (s == null)
return null;
T d = Activator.CreateInstance(s.GetType()) as T;
d.IsLoaded = false;
var properties = s.GetType().GetProperties();
foreach (var propertie in properties)
{
@@ -158,6 +166,7 @@ namespace AIStudio.Wpf.DiagramDesigner
d.FontViewModel = CopyHelper.Mapper(s.FontViewModel);
d.ShapeViewModel = CopyHelper.Mapper(s.ShapeViewModel);
d.LockObjectViewModel = CopyHelper.Mapper<LockObjectViewModel, ILockObjectViewModel>(s.LockObjectViewModel);
d.IsLoaded = true;
return d;
}