0
  1. 在 Silverlight 4.0 中制作 Binding 对象的完整单独副本需要什么?
  2. 仅仅复制它的每一个可设置属性就足够了吗?

更新

据我所知,第二个问题的答案是否定的。因为在绑定上设置属性会触发它的状态,一旦初始化就无法更改。例如,尽管没有什么可以阻止您设置 Source 和 RelativeSource 属性,但您会在运行时遇到异常,因为一旦设置了 Source 属性,您就无法再设置 RelativeSource。与 ElementName 属性相同的是,即使默认情况下它已经拥有 NULL,也不能分配给 NULL。

4

1 回答 1

0

您是否尝试在 Silverlight 中克隆 POCO 对象?如果是这样,你可以实现这样的事情:

public static T Clone<T>(T source)
{

    DataContractSerializer serializer = new DataContractSerializer(typeof(T));
    using (MemoryStream ms = new MemoryStream())
    {
        serializer.WriteObject(ms, source);
        ms.Seek(0, SeekOrigin.Begin);
        return (T)serializer.ReadObject(ms);
    }
} 
于 2012-11-30T11:34:29.247 回答