如何克隆WPF对象?

任何人都有一个很好的示例,该示例如何深度克隆WPF对象并保留数据绑定?


标记的答案是第一部分。

第二部分是您必须创建一个ExpressionConverter并将其注入序列化过程。有关详细信息,请参见:http

:

//www.codeproject.com/KB/WPF/xamlwriterandbinding.aspx?fid=

1428301&

df=

90&

mpp=25&noise=3&sort=

Position&

view=

Quick&

select=2801571

回答:

我做过的最简单的方法是使用XamlWriter将WPF对象保存为字符串。Save方法将序列化对象及其逻辑树中的所有子对象。现在,您可以创建一个新对象,并使用XamlReader加载它。

例如:将对象写入xaml(假设该对象是Grid控件):

string gridXaml = XamlWriter.Save(myGrid);

将其加载到新对象中:

StringReader stringReader = new StringReader(gridXaml);

XmlReader xmlReader = XmlReader.Create(stringReader);

Grid newGrid = (Grid)XamlReader.Load(xmlReader);

以上是 如何克隆WPF对象? 的全部内容, 来源链接: utcz.com/qa/407536.html

回到顶部