我有一个 ResourceDictionary,其中的 Canvas 定义为 x:Key=nameOfCanvasInResource
如何将其放入 xaml ???中的另一个画布中
像这样:
<Canvas Children="{StaticResource nameOfCanvasInResource}">
</Canvas>
谢谢:)
您可以简单地使用StaticResource
标记扩展作为标记,如下所示:
<Canvas>
<StaticResource ResourceKey="nameOfCanvasInResource"/>
</Canvas>
这避免了将其包装在额外的内容控件中的需要
使用任何具有Content
属性的控件
...
<Window.Resources>
<Canvas x:Key="ResourceCanvas" x:Shared="False">
<Rectangle Width="100" Stroke="Red" Height="100"></Rectangle>
</Canvas>
</Window.Resources>
<Canvas>
<ContentControl Content="{StaticResource ResourceCanvas}"/>
</Canvas>
...
如果在多个位置使用画布的新副本,则需要x:Shared="False"
。