在XAML / WPF中创建重复符号

时间:2010-07-30 21:34:26

标签: wpf xaml icons

我需要在XAML / WPF中创建一个重复符号(程序代码也可以,但如果可能的话我更喜欢XAML),如下所示,但我只需要带箭头的未完成的圆圈(按钮中的白色绘图): http://www.vista-style-icons.com/libs/phone/repeat.htm

我知道如何在XAML中创建一个圆圈,但我不知道如何创建一个未完成的圆圈并在开放端添加一个箭头? 谢谢你的帮助!

1 个答案:

答案 0 :(得分:2)

您可以使用ArcSegment作为Path形状的路径段来创建未完成的圆圈。您可以指定圆弧的起点和终点以及整个圆的半径。您可以将它们放在网格中,将其呈现在蓝色圆圈之上:

<Grid Width="160" Height="160">
    <Ellipse Fill="Blue"/>
    <Path StrokeThickness="5" Stroke="White">
        <Path.Data>
            <PathGeometry>
                <PathFigure StartPoint="115,45">
                    <ArcSegment Point="115,115" Size="50,50" IsLargeArc="True"/>
                </PathFigure>
            </PathGeometry>
        </Path.Data>
    </Path>
    <Polygon Points="115,115 105,105 125,105 125,125" Fill="White"/>
</Grid>

您也可以使用较短的Path Markup Syntax来创建StreamGeometry而不是PathGeometry:

<Grid Width="160" Height="160">
    <Ellipse Fill="Blue"/>
    <Path Data="M 115,45 A 50,50 0 1 0 115,115"
        StrokeThickness="5" Stroke="White"/>
    <Polygon Points="115,115 105,105 125,105 125,125" Fill="White"/>
</Grid>

您需要对其进行处理以获得您想要的外观,但这应该为您提供使用箭头绘制未完成圆圈的基本技巧。