WPF创建圆角Button

本文介绍了一种在WPF中实现按钮圆角的方法。通过自定义Button的ControlTemplate,并设置Border的CornerRadius属性,可以轻松地让按钮呈现出圆角样式。

最近学习WPF,看到Button全都四四方方的,于是想弄个圆角,百度许久,终于找到了正确答案。

于是在验证正确性的情况下做下记录

<Button Width="100" Height="50" Content="None" Name="firstButton"  Click="None_Click">
	<Button.Template >
		<ControlTemplate TargetType="{x:Type Button}" >
			<Border BorderBrush="{TemplateBinding Control.BorderBrush}" BorderThickness="1" CornerRadius="7,7,7,7">
				<Border.Background>#FFDDDDDD</Border.Background>
				<ContentPresenter Content="{TemplateBinding ContentControl.Content}" HorizontalAlignment="Center" VerticalAlignment="Center" ></ContentPresenter>
			</Border>
		</ControlTemplate>
	</Button.Template>
</Button>

下面事效果图

 

### 实现 WPFButton 控件的圆角边框样式 在 WPF 应用程序中,可以通过多种方法来设置 `Button` 的圆角边框样式。以下是几种常见的方式: #### 方法一:通过资源字典定义全局样式 可以在应用程序的资源文件或窗口级别的资源部分定义一个通用样式的 `Style` 来应用到所有的按钮上。 ```xml <Window.Resources> <Style x:Key="RoundedButtonStyle" TargetType="Button"> <Setter Property="Background" Value="#d9534f"/> <Setter Property="Foreground" Value="White"/> <Setter Property="FontSize" Value="16"/> <Setter Property="FontWeight" Value="Bold"/> <Setter Property="Padding" Value="10,5"/> <Setter Property="BorderBrush" Value="Black"/> <Setter Property="BorderThickness" Value="1"/> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="Button"> <Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="8"> <!-- 设置圆角 --> <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/> </Border> </ControlTemplate> </Setter.Value> </Setter> </Style> </Window.Resources> <Button Content="点击这里" Style="{StaticResource RoundedButtonStyle}" Width="120" Height="40"/> ``` 这种方法适用于希望在整个项目范围内统一使用的场景[^3]。 #### 方法二:直接在 XAML 文件内定义局部样式 如果只需要针对特定页面上的某些按钮应用此效果,则可以直接在此页面内的 `<Grid>` 或其他容器标签下定义该样式而无需将其放置于整个窗体级别。 ```xml <StackPanel Orientation="Horizontal"> <Button Content="提交表单"> <Button.Style> <Style TargetType="Button"> <Setter Property="CornerRadius" Value="8"/> <!-- 设置圆角 --> <Setter Property="Width" Value="100"/> <Setter Property="Height" Value="40"/> <Setter Property="Margin" Value="5"/> </Style> </Button.Style> </Button> <Button Content="取消操作"> <Button.Style> <Style TargetType="Button"> <Setter Property="CornerRadius" Value="8"/> <!-- 设置圆角 --> <Setter Property="Width" Value="100"/> <Setter Property="Height" Value="40"/> <Setter Property="Margin" Value="5"/> </Style> </Button.Style> </Button> </StackPanel> ``` 这种方式更加灵活,允许开发者在同一界面中有不同的设计需求时分别处理各个组件[^2]。 #### 方法三:利用 Visual Studio 设计器功能创建自定义模板 对于那些不熟悉XAML语法但希望通过图形化工具完成任务的人来说,在Visual Studio中提供了方便的功能——即右键点击所需修改外观的对象(本例中为`Button`),选择菜单项“编辑模板(Edit Template)”-> “编辑副本(Edit a Copy...)”。这将引导用户逐步建立一个新的控件模板,并可在其中轻松调整包括但不限于圆角在内的各种视觉特性[^4]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

baoolong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值