2013-08-30 1 views
0

다음과 같이 테두리에 호버 효과를 추가하고 싶습니다.WinRT - 테두리 호버 변경 불투명도

<Border x:Name="borderHeader" Background="#000000" Height="100" VerticalAlignment="top" Opacity="0.5" HorizontalAlignment="Left" Width="1366"> 
그리고 아래 내 비주얼 상태 코드입니다.

<VisualStateManager.VisualStateGroups> 
<VisualState x:Name="PointerOver"> 

        <Storyboard> 
         <DoubleAnimation Duration="0" To="1.0" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="borderHeader"/> 
        </Storyboard> 
       </VisualState> 
      </VisualStateGroup> 
</VisualStateManager.VisualStateGroups> 

언제까지 작동하지 않습니다. 잘못 처리 한 부분을 알려주십시오. 감사합니다.

답변

0

시각 상태는 ControlTemplate 안에있는 컨트롤에 적용 할 수 있습니다. 테두리는 독립 실행 형 제어입니다. 그래서 당신은 PointerEntered & PointerExited 이벤트에 의존해야합니다.

XAML

<Border x:Name="borderHeader" Background="Yellow" Height="100" VerticalAlignment="top" Opacity="0.5" HorizontalAlignment="Left" Width="1366" 
       PointerEntered="borderHeader_PointerEntered_1" PointerExited="borderHeader_PointerExited_1"/> 

C#

private void borderHeader_PointerEntered_1(object sender, Windows.UI.Xaml.Input.PointerRoutedEventArgs e) 
{ 
    borderHeader.Opacity = 1; 
} 

private void borderHeader_PointerExited_1(object sender, Windows.UI.Xaml.Input.PointerRoutedEventArgs e) 
{ 
    borderHeader.Opacity = 0.5; 
} 
관련 문제