在WPF中将路径从ResourceDictionary添加到StackPanel

本文关键字:ResourceDictionary 添加 StackPanel 路径 WPF | 更新日期: 2023-09-27 18:29:50

我有一个ResourceDictionary,其中包含一个Path(键为"Pager"),我想从代码隐藏(C#)将其添加到StackPanel中。

目前,我这样做(这适用于寻呼机的单个实例。

var pager = this.FindResource("Pager") as System.Windows.Shapes.Path;
pagerPanel.Children.Add(pager);

问题是,如果不遇到XamlParseException:{"Specified Visual is already a child of another Visual or the root of a CompositionTarget."} ,我无法向StackPanel添加多个路径

关于如何从ResourceDictionary添加多个路径,有什么想法吗?

在WPF中将路径从ResourceDictionary添加到StackPanel

对于声明的资源,您必须将x:Shared设置为false,如下所示:

<Path x:Shared="false" x:Key="Pager"/>

您可以尝试从您的路径(可视化)中分割数据。添加

<PathGeometry x:Key="Pager" Figures="M0,0 L100,0 L50,50z"/>

到您的资源并使用一次或多次:

<Path Data="{StaticResource Pager}" Fill="Red"/>

我最终将Path封装在Grid而不是Canvas中,这解决了问题。

相关文章:
  • 没有找到相关文章