C#对象拷贝

mac2024-03-06  37

WPF 做应用的时候   俩个窗体传值 发现 如果 点击取消 依然会有残余的值留在对象里  

现在没有好的办法 只能在A窗体 打开B窗体时  在B窗体里 Clone 接收A窗体对象

虽然用的集合  也没关系 循环一下就可以 

上copy 代码

public class CloneObject { /// <summary> /// 克隆一个对象 /// </summary> /// <param name="sampleObject"></param> /// <returns></returns> public static object Clone(object sampleObject) { Type t = sampleObject.GetType(); PropertyInfo[] properties = t.GetProperties(); object p = t.InvokeMember("", BindingFlags.CreateInstance, null, sampleObject, null); foreach (PropertyInfo pi in properties) { if (pi.CanWrite) { object value = pi.GetValue(sampleObject, null); pi.SetValue(p, value, null); } } return p; } }

感觉  拿起来就写代码已经不是工作5 6年的人 做的事情了 

打算整理完sqlserver 高级 开始看软件设计

最新回复(0)