2017-02-08 5 views
2

DataTrigger를 사용하여 버튼의 불투명도를 수정하고 싶습니다.' "Opacity"멤버가 인식되지 않거나 액세스 할 수 없습니다. 불투명도를 설정할 수없는 이유는 무엇입니까?

   <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> 

버튼에 불투명도가 설정되어 있고 해당 DataTriggers를 스타일에 사용해야한다는 것을 알고 있습니다. 그러나 컴파일러에서 '멤버 "Opacity"가 인식되지 않거나 액세스 할 수 없다고보고했습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변

6

당신은 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> 
... 
+1

완벽! 훌륭하게 작동합니다. 고맙습니다. – Will