.net 如何在XAML中实现圆形按钮
如何在XAML中实现下面的圆形按钮,无需外部图像。 中间不需要黑线。.net 如何在XAML中实现圆形按钮,.net,wpf,xaml,.net,Wpf,Xaml,如何在XAML中实现下面的圆形按钮,无需外部图像。 中间不需要黑线。 这是一种非常快速的方法。可以将其更改为样式,还可以通过创建TemplatedControl使其更加灵活,从而允许设计师轻松更改颜色和其他属性 <Button Width="100" Height="100"> <Button.Template> <ControlTemplate TargetType="Button"> <
这是一种非常快速的方法。可以将其更改为样式,还可以通过创建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>
您必须将按钮的高度和宽度设置为圆形。为此,请使用ContentPresenter,如下所示。我在回答中添加了ContentPresenter(和网格)。(您从未提到您需要内容)@ernodeweard:我使用您的创建了一个圆形按钮,当窗口处于默认大小时,按钮中有字母R,如果未显示最大化的内容,则仅显示其他内容。。我的窗口的默认高度和宽度为700。。我如何修复它。@Silver-很难猜测您做错了什么,我希望您使用了绝对大小/位置。您可能已将内容的边距设置为绝对值。您可以使用正在使用的代码创建一个新问题,并询问如何正确定位内容。如何以风格编写此问题?
<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>