如何通过转换器设置禁用按钮上的背景颜色?

阿尔瓦罗·加西亚(Alvaro Garcia)

我有一个按钮,该操作可能需要很多时间。这是一个异步方法,因此,我不会阻塞UI,但是我想禁用该按钮,以避免执行其他相同操作的机会。

为此,我禁用了该按钮,并更改了其背景,以显示正在运行的操作是单击该按钮时启动的操作。

我有一个转换器,因为在我的视图模型中,我有一个bool属性,该属性设置操作是开始还是操作完成。要将布尔转换为背景色,请使用转换器。

好吧,问题在于,如果我禁用了该按钮,则无法使用转换器设置背景。

我想知道如何做到这一点,禁用按钮并使用转换器更改背景。

我的视图模型中的代码

private async void componentesAsignar()
{

    Bussy = true; //need for the converter, to set the background
    MyActionStarted = true; //need to disabled the button

    await Task.Delay(10000); //the code that takes many time
}

我认为我的代码

<Button Content="MyAction" Height="23" Name="btnMyAction" Width="75"
    Background="{Binding MyActionStarted, Converter={StaticResource actionInProgressToColorConverter}}">

我的转换器

object IValueConverter.Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
    if(((bool)value) == false)
    {
        return "#FFDDDDDD";
    }
    else
    {
        return "#FF589FF3";
    }
}

非常感谢。

nkoniishvt

代替使用转换器,我将使用DataTrigger:

<Button ...>
    <Button.Style>
        <Style TargetType="{x:Type Button}">
            <Setter Property="Background" Value="#FFDDDDDD"/> 
            <Style.Triggers>
                <DataTrigger Binding="{Binding Bussy, Mode=OneWay}" Value="True">
                    <Setter Property="IsEnabled" Value="False"/>
                    <Setter Property="Background" Value="#FF589FF3"/> 
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </Button.Style>
</Button>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用QSS为禁用的按钮设置不同的背景颜色?

来自分类Dev

如何通过颜色选择器方法在按钮上设置颜色?

来自分类Dev

如何在按钮上设置:focus背景颜色

来自分类Dev

通过注释转换器禁用特定测试:TestNG

来自分类Dev

如何使用AppCompat设置按钮的禁用颜色?

来自分类Dev

如何设置JetpackCompose按钮背景颜色

来自分类Dev

禁用离子按钮 Ionic 2 上的悬停背景颜色更改

来自分类Dev

禁用按钮,但保持背景颜色

来自分类Dev

如何自动设置kramdown转换器的HTML输出样式?

来自分类Dev

如何为 PrimeFaces 组件动态设置转换器?

来自分类Dev

如何通过转换器传递当前数据?

来自分类Dev

我如何通过monad转换器参数化monad?

来自分类Dev

如何更改主题中的材质按钮禁用状态背景颜色?

来自分类Dev

WPF 使用转换器更改数据网格单元格背景颜色

来自分类Dev

如何在 KeyDown 操作上触发转换器?

来自分类Dev

未调用颜色转换器绑定

来自分类Dev

设置按钮背景和颜色

来自分类Dev

如何通过JavaScript更改背景颜色来覆盖对象上的所有CSS选择器?

来自分类Dev

如何创建转换器?

来自分类Dev

为不同的按钮设置背景颜色按钮

来自分类Dev

如何通过CSS设置不透明的背景颜色?

来自分类Dev

如何更改微调器中按钮的背景颜色?

来自分类Dev

如何使用动作侦听器从按钮获取背景颜色

来自分类Dev

laravel 5.6 上的 cartalyst/转换器

来自分类Dev

在Symfony2中的表单值转换器上设置默认值

来自分类Dev

如何更改设置页面而不是编辑器的背景颜色?

来自分类Dev

如何更改按钮的背景颜色?

来自分类Dev

如何更改按钮背景的颜色

来自分类Dev

仅在部分背景上设置背景颜色

Related 相关文章

热门标签

归档