c# WPF构建形状的问题
本文关键字:问题 WPF 构建 | 更新日期: 2023-09-27 18:06:11
我已经创建了一个位于canvas中的形状元素:
<Canvas HorizontalAlignment="Left" Width="47" Height="71">
<Polygon Points="25 0 10 43 40 43" Stroke="Black" Fill="Orange" Height="45" Canvas.Left="0" Canvas.Bottom="0" Width="47"></Polygon>
<Ellipse Height="20" Width="20" Stroke="Black" Fill="Black" Canvas.Bottom="45" Canvas.Left="15"></Ellipse>
</Canvas>
和我,当我点击按钮,它应该创建这样一个元素在另一个画布容器!
我怎么能重用这个构造形状几次在我的代码没有写它不止一次在XAML?
我读过一些关于模板和样式。但我不能真正适应我的问题。因为我想在运行时创建这些形状
你可以像这样在资源中声明多边形
<Window.Resources>
<Polygon x:Key = "Poly" Points="25 0 10 43 40 43" Stroke="Black" Fill="Orange" Height="45" Canvas.Left="0" Canvas.Bottom="0" Width="47"/>
</Window.Resources>
那么你可以这样使用
<ContentControl Content="{StaticResource Poly}"/>
同样你也可以做
<Window.Resources>
<Canvas HorizontalAlignment="Left" Width="47" Height="71" x:Key="MyShape">
<Polygon Points="25 0 10 43 40 43" Stroke="Black" Fill="Orange" Height="45" Canvas.Left="0" Canvas.Bottom="0" Width="47"></Polygon>
<Ellipse Height="20" Width="20" Stroke="Black" Fill="Black" Canvas.Bottom="45" Canvas.Left="15"></Ellipse>
</Canvas>
</Window.Resources>
<ContentControl Content="{StaticResource MyShape}"/>