更改wpf原始默认按钮的样式

这篇具有很好参考价值的文章主要介绍了更改wpf原始默认按钮的样式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

更改wpf原始默认按钮的样式,C#,C#,WPF

样式

更改wpf原始默认按钮的样式,C#,C#,WPF

代码

<Window x:Class="WpfApp4.Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WpfApp4"
        mc:Ignorable="d"
        Title="Window1" Height="450" Width="800">
    <Window.Resources>
        <Style x:Key="btnStyle" TargetType="Button">
            <Setter Property="Template">
                <Setter.Value>
                    <!--重写控件-->
                    <ControlTemplate TargetType="Button">
                        <!--自定义视觉树:控件外观布局-->
                        <Border CornerRadius="8,8,8,8"  BorderBrush="Black"  BorderThickness="1">
                            <Grid Width="60" Height="30">
                                <Grid.Background>
                                    <!--径向渐变-->
                                    <RadialGradientBrush>
                                        <GradientStop Color="White" Offset="0"></GradientStop>
                                        <GradientStop Color="Red" Offset="1.8"></GradientStop>
                                    </RadialGradientBrush>
                                </Grid.Background>
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="1*"/>
                                    <ColumnDefinition Width="2*"></ColumnDefinition>
                                </Grid.ColumnDefinitions>
                                <Image Source="images\640.jfif" Grid.Column="0"></Image>
                                <!--TemplateBinding 会根据你在button设置conten 内容发生变化 例如,button中conten的属性是“点击”,那么这个Textblock的text的内容显示的就是“点击”-->
                                <TextBlock Grid.Column="1" Text="{TemplateBinding Content}"></TextBlock>
                            </Grid>
                        </Border>
                        <ControlTemplate.Triggers>
                            <Trigger Property="IsMouseOver" Value="True">
                                <Setter  Property="Opacity" Value="0.5"/>
                            </Trigger>
                            <Trigger Property="IsPressed" Value="True">
                                <Setter  Property="Opacity" Value="0.5"/>
                            </Trigger>
                        </ControlTemplate.Triggers>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </Window.Resources>
    <Grid>
        <Button Width="60" Height="30" Content="TemplatBinding" Style="{StaticResource btnStyle}" Margin="0,0,-0.4,0.4"></Button>
        <Button  Width="60" Height="30" Content="新增" Style="{StaticResource btnStyle}" Margin="0,45,-0.4,-44.6"></Button>
    </Grid>
    
</Window>

进阶应用

样式

更改wpf原始默认按钮的样式,C#,C#,WPF文章来源地址https://www.toymoban.com/news/detail-817224.html

代码

<Window x:Class="WpfApp4.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WpfApp4"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Window.Resources>
        <ResourceDictionary>
            <!--合并资源字典-->
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="Dictionary1.xaml"/>
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Window.Resources>

    <Grid>
        <!--定义列-->
        <Grid.ColumnDefinitions>
            <ColumnDefinition/>
            <ColumnDefinition/>
        </Grid.ColumnDefinitions>
        <!--第一列的内容-->
        <Grid Grid.Column="0"  Background="#409eff">
        </Grid>
        <!--第二列的内容-->
        <!--登录窗口表单-->
        <Grid Grid.Column="1" Background="#ffffff">
            <TextBlock  Margin="20" FontSize="25">用户登录</TextBlock>
            <!--垂直排列-->
            <StackPanel Orientation="Vertical" VerticalAlignment="Center">
                <TextBox  Height="40"   Margin="20,10,20,10"  ></TextBox>
                <!--<TextBox Height="40" Margin="20,10,20,10"></TextBox>-->
                <PasswordBox Height="40" Margin="20,10,20,10"></PasswordBox>

                <!--验证码 水平排列-->
                <StackPanel Orientation="Horizontal"  Margin="20,10,20,10"   Height="50">
                    <TextBox Width="150" Height="40" ></TextBox>
                    <Image Height="40" Width="100"></Image>
                </StackPanel>

                <Button Height="40" Margin="20,10,20,10" Foreground="White" Background="#409eff" Style="{StaticResource btnStyle}" Click="Button_Click">登录</Button>
            </StackPanel>
        </Grid>
    </Grid>
</Window>

参考文献

到了这里,关于更改wpf原始默认按钮的样式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • WPF:自定义按钮模板

    1.WPF:自定义按钮模板 自定义封装的按钮属性可写在Button.Template中 Background=\\\"{TemplateBinding Background}\\\"中的TemplateBinding代表使用按钮本身所使用的背景颜色 不在样式内修改背景颜色 例如: 2.通过事件处理改变属性 1.首先先定义按钮名称 Border x:Name=“button” 2.在 ControlTemplate.Trigger

    2024年02月08日
    浏览(68)
  • wpf 实现3D按钮

    在WPF中,通过3D转换和视觉效果可以模拟出3D按钮的样式。以下是一个使用 Button 控件并结合 Viewport3D 来创建带有3D外观的按钮的例子: 请注意,这个例子创建了一个具有简单3D效果的按钮,其中包含一个略微向屏幕外突出的立方体。实际应用中可能需要更复杂的3D建模和材质设

    2024年01月23日
    浏览(39)
  • WPF自定义按钮控件

    在平时的WPF应用中,系统提供的按钮控件确实可以实现正常的逻辑,但是从视觉方面看的话,确实不够美观,而且每个项目的UI设计不尽相同。那么自定义按钮控件就是必须的了,网上查找了很多自定义按钮控件的办法,但每次都是写到一半就报错。在参考了多个技术贴之后

    2024年02月08日
    浏览(45)
  • wpf 按钮添加图标

    或者App.xaml不修改,直接写成下面那种

    2024年02月12日
    浏览(43)
  • C#WPF通知更改公共类使用实例

    本文实例演示C#WPF通知更改公共类使用实例,通过使用公共类简化了代码。其中的代码中也实现了命令的用法。 定义: INotifyPropertyChanged 接口:用于向客户端(通常是执行绑定的客户端)发出某一属性值已更改的通知 。 首先创建WPF项目,添加按钮和文本控件  

    2024年02月07日
    浏览(36)
  • WPF 控件 (四、单选按钮)

    1. style 2.demo 3.效果 1. RadioButton2 2. Style 3. Demo 4.效果

    2024年02月20日
    浏览(36)
  • WPF 零基础入门笔记(1):WPF静态页面,布局+样式+触发器

    WPF 零基础入门笔记(0):WPF简介 WPF MaterialDesign 初学项目实战(0):github 项目Demo运行 WPF MaterialDesign 初学项目实战(1)首页搭建 WPF MaterialDesign 初学项目实战(2)首页导航栏样式 WPF MaterialDesign 初学项目实战(3)动态侧边栏 WPF MaterialDesign 初学项目实战(4)侧边栏路由管理

    2024年02月11日
    浏览(41)
  • WPF列表样式

    WPF的数据绑定系统自动生成列表项对象,为单个项应用所需的样式不是很容易。解决方案是ItemContainerStyle 属性。如果设置了ItemContainerStyle 属性,当创建列表项时,列表控件会将其向下传递给每个项。对于ListBox控件,每个项有ListBoxItem 对象表示,对于CombBox 控件,则对应是

    2024年02月10日
    浏览(32)
  • WPF中样式

    WPF中样式:类似于winform中控件的属性  效果如下:   如果要创建多个相似效果的按钮,就需要将该属性写多次,虽然也能达到相同的效果;但是费力。  效果如下:  因此,首先想到的是早轮子重复使用。需要通过Style。 创建样式的步骤: 在Window.Resources中创建样式 给每个

    2024年02月20日
    浏览(28)
  • WPF 搜索框控件样式

    完全通过Xaml代码实现,使用了UserControl进行封装。功能包括聚焦时控件展开,输入为空时的文字提示,以及待选提示项列表等效果。实现效果如下图: xaml代码 后台代码: 控件使用显示示例:

    2024年02月16日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包