2011-04-07 8 views
1

I 대상 WPF 스타일이 있습니다WPF 스타일은 일관성없이 적용

<Style x:Key="ImgFadeStyle" 
     TargetType="Image"> 
    <Style.Triggers> 
     <Trigger Property="IsEnabled" Value="false"> 
      <Setter Property="Opacity" Value=".5" /> 
     </Trigger> 
    </Style.Triggers> 
</Style> 

내가 일부 이미지에 적용 : 코드 숨김에서

<Image Name="imgFirst" 
    Grid.Column="0" 
    Style="{StaticResource ImgFadeStyle}" 
    Source="pack://application:,,,/AppGUI;component/Images/Temp/resultset_first.png" 
    ToolTip="First" 
    MouseLeftButtonUp="imgFirst_MouseLeftButtonUp" /> 

<Image Name="imgLast" 
    Grid.Column="6" 
    Style="{StaticResource ImgFadeStyle}" 
    Source="pack://application:,,,/AppGUI;component/Images/Temp/resultset_last.png" 
    ToolTip="Last" 
    MouseLeftButtonUp="imgLast_MouseLeftButtonUp" /> 

, 나는 "을"true "또는 IsEnabled 속성을 설정을 그릇된". 첫 번째 이미지는 항상 예상대로 반응합니다. 두 번째 이미지는 속성 변경에 반응하지 않습니다. 누가 잘못되었는지 아는 사람 있습니까?

감사합니다.

+0

H.B. 가능성이 높습니다. [WPF Visualizer] (http://blogs.msdn.com/b/jgoldb/archive/2010/05/25/wpf-visualizer-in-visual-studio-2010.aspx)를 사용하여 쉽게 확인할 수 있습니다. 중단 점 (예 : imgLast_MouseLeftButtonUp)을 치고 나서 조사 식 창에 imgLast가있는 경우 돋보기를 클릭 할 수 있습니다. 오른쪽에 속성을 나열하고 Opacity 속성의 출처를 알려줍니다. – CodeNaked

답변

2

이것은 Dependency Property value precedence의 문제 일 수 있습니다. 마지막 이미지의 Opacity을 명시 적으로 어딘가에 설정하면 스타일의 노력을 무시할 수 있습니다.

+0

좋은 생각이지만 다른 위치에서는 불투명도가 설정되지 않습니다. – Sako73

+0

글쎄, 당신의 코드를 보면 작동하지 않을 이유가 없다. 나는 그 상황이 잘못이라고 확신한다. 그냥 이걸 보면서 아무 것도 말할 수 없어요. –

관련 문제