2011-04-21 32 views
0

当我尝试多次使用某个元素(例如在两个不同的StackPanel s中)时,我在XAML UserControl资源中有一些类型为Path的元素,我得到一个InvalidOperationException异常。在XAML中不止一次地从资源中获取元素

有什么问题?为什么资源元素在我的控制中被识别为真实组件?

回答

3

仅限于Freezable冻结的对象可以在同一个可视化树中多次使用。 Path对象不是Freezable对象,而是FrameworkElement对象,因此是错误。您可以尝试使用Path资源上的x:Shared="False"属性在每次访问资源时创建新副本以防止发生异常。

+0

是的! Thakns很多,这就是问题所在。 – 2011-04-21 04:55:10