如何在XAML中实现圆形按钮

lin*_*ize 25 .net wpf xaml

如何在XAML中实现如下所示的圆形按钮,无需外部图像.不需要中间的黑线.

在此输入图像描述

Ern*_*rno 50

这是一种非常快速的方法.它可以改变为一种风格,通过创建一个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>
Run Code Online (Sandbox Code Playgroud)

  • 为此,请在我的回复中使用ContentPresenter. (3认同)
  • 我在答案中添加了ContentPresenter(和一个网格).(你从未提到你需要的内容) (3认同)

yo *_*han 20

 <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>
Run Code Online (Sandbox Code Playgroud)

你必须设置按钮的高度和宽度,使其成为圆形.