2010-12-03 6 views
0

의 배경 브러시를 변경하면 마우스 오버시 내 단추의 배경 브러시를 변경하고 싶습니다. 내 버튼의 스타일을 만들어 마우스를 두었을-VisualState을 변경 :Silverlight : Silverlight-Application에서 MouseOver

'이름'배경은 "네임 스페이스에 존재하지 않기 때문에 작동하지 않습니다
<VisualState x:Name="MouseOver"> 
    <Storyboard> 
    <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Background)" Storyboard.TargetName="BorderBackground"> 
     <DiscreteObjectKeyFrame KeyTime="0"> 
      <DiscreteObjectKeyFrame.Value> 
       <Background>{TemplateBinding BorderBrush}</Background> 
      </DiscreteObjectKeyFrame.Value> 
     </DiscreteObjectKeyFrame> 
    </ObjectAnimationUsingKeyFrames> 
    </Storyboard> 
</VisualState> 

"http://schemas.microsoft.com/ 클라이언트/2007 " 어떤 생각이 든, 뒤에있는 코드와 적절한 이벤트없이 마우스 오버시 테두리 브러쉬를 배경 브러시로 설정하는 방법은 무엇입니까? 사전에

감사합니다,
프랭크

답변

1

Background는 작동하지 않는 이유입니다 Control하지 UIElement의 속성입니다.

Source

다음과 같은 사용해야합니다 :

... Storyboard.TargetProperty="(Control.Background)" ... 
+0

답장을 보내 주셔서 감사합니다! 불행하게도 여전히 '이름'배경 '이 네임 스페이스'http://schemas.microsoft.com/client/2007 '에 존재하지 않는다고 알려줍니다.' (도청 라인은 {TemplateBinding BorderBrush} 라인, btw입니다.) {TemplateBinding BorderBrush}를 명시 적으로 입력하면 중첩 된 속성이 지원되지 않습니다. – Aaginor

+0

이 모든 것 VisualStateManager에서 바인딩을 사용할 수 없기 때문에 작동하지 않습니다. – Aaginor