【问题标题】:Change button Background on IsEnabled using expression blend使用表达式混合更改 IsEnabled 上的按钮背景
【发布时间】:2018-11-20 15:10:37
【问题描述】:

我想在 WPF 中更改按钮的背景颜色和路径的填充颜色。颜色值应根据 Button 的 IsEnabled 属性的当前状态进行更新。

(如果按钮被禁用,我想创建一个深灰色的背景颜色,如果按钮被禁用,我想将路径的填充颜色更新为浅灰色,如果按钮被启用,背景和填充颜色应该是它们当前的颜色)

我知道这可以通过一些转换器来完成....但是我只能通过使用 Blend(状态和触发器)更容易地做到这一点吗?如果有请告诉我怎么做?

【问题讨论】:

    标签: wpf expression-blend


    【解决方案1】:

    我已经覆盖了默认样式并将背景颜色更改为DarkGray 您是否使用触发器询问过。休息我使用TemplateBinding保持相同的按钮样式

    <Button x:Name="Button1" Content="Login" HorizontalAlignment="Left"  Height="31"  Margin="10,41,0,-41" Grid.Row="1"  VerticalAlignment="Top" Width="129" Click="Button_Click_1">
            <Button.Style>
                <Style TargetType="Button">
                    <Style.Triggers>
                        <Trigger Property="IsEnabled" Value="False">
                            <Setter Property="OverridesDefaultStyle" Value="True" />
                            <Setter Property="Template">
                                <Setter.Value>
                                    <ControlTemplate TargetType="{x:Type Button}">
                                        <Grid Background="{TemplateBinding Background}">
                                            <ContentPresenter x:Name="MyContentPresenter" 
                                                              Content="{TemplateBinding Content}"
                                                              HorizontalAlignment="Center" 
                                                              VerticalAlignment="Center" />
                                        </Grid>
                                    </ControlTemplate>
                                </Setter.Value>
                            </Setter>
    
                            <Setter Property="Background" Value="DarkGray"></Setter>
                    </Trigger>
                    <Trigger Property="IsEnabled" Value="True">
                            <Setter Property="Background" Value="#FFDDDDDD"></Setter>
                    </Trigger>
    
                </Style.Triggers>
                </Style>
            </Button.Style>
        </Button>
    

    【讨论】:

    • @Johan Gald 我能帮到你!!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-04
    • 2013-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多