'The member "Opacity" is not recognized or is not accessible.' 为什么我不能设置不透明度?

'The member "Opacity" is not recognized or is not accessible.' Why can't I set the opacity?

我想使用 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 具有可以设置的不透明度,并且必须在 Style 中使用 DataTriggers。但是编译器报告 'The member "Opacity" is not recognized or is not accessible.' 我做错了什么?

您应该添加 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>
...