wpf - '成员 "Opacity"无法识别或无法访问 .' Why can' 我设置了不透明度?

标签 wpf xaml wpf-controls datatrigger

我想使用 DataTrigger 修改按钮的不透明度。

                <Button x:Name="StartTreatment"
                    Grid.Column="3"
                    Width="160"
                    Height="30"
                    Content="{x:Static resources:UserMessages.TrcsConsoleViewModel_LoadWfSequence_StartProcedure}"
                    IsEnabled="{Binding CanStartProcedure}"
                    Visibility="{Binding CanStartPatientTreatment, Converter={StaticResource BooleanToVisibility}}" >
                <Button.Style>
                    <Style>
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding CanStartProcedure}" Value="False">
                                <Setter Property="Opacity" Value="0.5"></Setter>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </Button.Style>
            </Button>

我知道 Button 有一个可以设置的 Opacity,并且必须在 Style 中使用 DataTriggers。但是,编译器报告“无法识别或无法访问成员“Opacity”。我究竟做错了什么?

最佳答案

您应该添加 TargetType :

...
<Button.Style>
    <Style TargetType="Button">
        <Style.Triggers>
            <DataTrigger Binding="{Binding CanStartProcedure}" Value="False">
                <Setter Property="Opacity" Value="0.5"></Setter>
            </DataTrigger>
        </Style.Triggers>
    </Style>
</Button.Style>
...

关于wpf - '成员 "Opacity"无法识别或无法访问 .' Why can' 我设置了不透明度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42122424/

相关文章:

wpf - WPF 中的简单(我认为)水平线?

c# - 将 DependencyProperty 转发到用户控件中包含的控件

C# WPF DataTemplate 在属性上设置背景颜色

WPF:如何正确使用 MVVM 模式

xaml - Xamarin.Forms Xaml 背景图像

WPF 数据模板 - x :Key vs DataType ="{x:Type XXXX")

c# - WPF面板旋转?

c# - 事件处理程序位于与 MainWindow 不同的类中

c# - WPF 工具栏删除放置在其中的控件的自定义样式

wpf - 停止 Gridsplitter 将内容拉伸(stretch)到窗口之外