如何在XAML中实现如下所示的圆形按钮,无需外部图像。 不需要中间的黑线。
答案 0 :(得分:48)
这是一种非常快速的方法。它可以变成一种风格,通过创建一个TemplatedControl可以使设计师更容易地改变颜色和其他属性。
<Button Width="100"
Height="100">
<Button.Template>
<ControlTemplate TargetType="Button">
<Grid>
<Ellipse Stroke="Black"
StrokeThickness="2">
<Ellipse.Fill>
<RadialGradientBrush>
<GradientStop Offset="0"
Color="Lime" />
<GradientStop Offset="1"
Color="Lime" />
<GradientStop Offset="1"
Color="Gold" />
<RadialGradientBrush.Transform>
<TransformGroup>
<ScaleTransform ScaleY="0.65" />
</TransformGroup>
</RadialGradientBrush.Transform>
</RadialGradientBrush>
</Ellipse.Fill>
</Ellipse>
<ContentPresenter HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Grid>
</ControlTemplate>
</Button.Template>
</Button>
答案 1 :(得分:17)
<Button Width="100" Height="100" Content="Abcd">
<Button.Template>
<ControlTemplate TargetType="{x:Type Button}">
<Grid>
<Ellipse Fill="Red"/>
<ContentPresenter Content="{TemplateBinding Content}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</ControlTemplate>
</Button.Template>
</Button>
你必须设置按钮的高度和宽度,使其成为圆形。
答案 2 :(得分:4)
这是一个关于在混合中从头开始构建你的控件的链接。
http://www.codeproject.com/Articles/32257/A-Style-for-Round-Glassy-WPF-Buttons