在 XAML 中多次从资源中获取元素

发布于 2024-11-03 04:56:05 字数 176 浏览 1 评论 0原文

我在 XAML UserControl 资源中有一些 Path 类型的元素,当我尝试多次使用某个元素(例如在两个不同的 StackPanel 中)时,我收到 InvalidOperationException。

有什么问题吗?为什么资源元素在我的控件上被标识为真实组件?

I have some elements of type Path in XAML UserControl resources, when I try to use some element more than once (for example in two different StackPanels) I get an InvalidOperationException.

What's the problem? Why resource element identifies as real component on my control?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

陌路终见情 2024-11-10 04:56:05

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

Only Freezable objects that are frozen can be used more than once in the same visual tree. Path objects are not Freezable objects but FrameworkElement objects, hence the error. You can try using the x:Shared="False" attribute on the Path resource to create a new copy each time the resource is accessed to prevent the exception.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文