2017-12-06 2 views
0

WPF를 처음 사용합니다. 이 사각형 내 코드입니다 :변경 사각형 WPF에서 마우스로 채우기 색

<Rectangle x:Name="rect1" Grid.Column="1" Fill="#FF505F75" HorizontalAlignment="Left" Height="50" Margin="36,171,0,0" StrokeThickness="2" VerticalAlignment="Top" Width="358" RadiusX="30" RadiusY="50"> 

    </Rectangle> 

그리고 이것은 마우스를 두었을 때의 버튼의 색상 변화를 애니메이션하는 코드입니다

<ControlTemplate.Triggers> 
        <Trigger Property="IsEnabled" Value="False"> 
         <Trigger.EnterActions> 
          <BeginStoryboard> 
           <Storyboard x:Name="DisabledAnimation"> 
            <ColorAnimation Storyboard.TargetName="BackgroundGradientStop1" 
                Storyboard.TargetProperty="Color" 
                To="{StaticResource IsNotEnabledBackgroundColor1}" 
                Duration="0" /> 
            <ColorAnimation Storyboard.TargetName="BackgroundGradientStop2" 
                Storyboard.TargetProperty="Color" 
                To="{StaticResource IsNotEnabledBackgroundColor2}" 
                Duration="0" /> 
           </Storyboard> 
          </BeginStoryboard> 
         </Trigger.EnterActions> 
         <Trigger.ExitActions> 
          <BeginStoryboard> 
           <Storyboard x:Name="EnabledAnimation"> 
            <ColorAnimation Storyboard.TargetName="BackgroundGradientStop1" 
                Storyboard.TargetProperty="Color" 
                To="{StaticResource BackgroundColor1}" 
                Duration="0" /> 
            <ColorAnimation Storyboard.TargetName="BackgroundGradientStop2" 
                Storyboard.TargetProperty="Color" 
                To="{StaticResource BackgroundColor2}" 
                Duration="0" /> 
           </Storyboard> 
          </BeginStoryboard> 
         </Trigger.ExitActions> 
        </Trigger> 
        <MultiTrigger> 
         <MultiTrigger.Conditions> 
          <Condition Property="IsEnabled" Value="True" /> 
          <Condition Property="IsMouseOver" Value="True" /> 
         </MultiTrigger.Conditions> 
         <MultiTrigger.EnterActions> 
          <BeginStoryboard> 
           <Storyboard x:Name="MouseOverAnimation"> 
            <ColorAnimation Storyboard.TargetName="BackgroundGradientStop1" 
                Storyboard.TargetProperty="Color" 
                To="{StaticResource MouseOverBackgroundColor1}" 
                Duration="0:0:0:1" /> 
            <ColorAnimation Storyboard.TargetName="BackgroundGradientStop2" 
                Storyboard.TargetProperty="Color" 
                To="{StaticResource MouseOverBackgroundColor2}" 
                Duration="0:0:0:1" /> 
           </Storyboard> 
          </BeginStoryboard> 
         </MultiTrigger.EnterActions> 
         <MultiTrigger.ExitActions> 
          <BeginStoryboard> 
           <Storyboard x:Name="MouseOutAnimation" FillBehavior="Stop"> 
            <ColorAnimation Storyboard.TargetName="BackgroundGradientStop1" 
                Storyboard.TargetProperty="Color" 
                To="{StaticResource BackgroundColor1}" 
                Duration="0:0:0:1" /> 
            <ColorAnimation Storyboard.TargetName="BackgroundGradientStop2" 
                Storyboard.TargetProperty="Color" 
                To="{StaticResource BackgroundColor2}" 
                Duration="0:0:0:1" /> 
           </Storyboard> 
          </BeginStoryboard> 
         </MultiTrigger.ExitActions> 
        </MultiTrigger> 

내 질문은, 어떻게 사각형에 사용할 수있다는? 또는 마우스 위로 사각형의 채우기 색을 어떻게 변경합니까? 색상을 바꾸는 것이 아니라 색상이 희미 해져서 가능합니까?

답변

2

그것을 자신을 고정 :

<Rectangle.Style> 
      <Style TargetType="Rectangle"> 
       <Style.Triggers> 
        <EventTrigger RoutedEvent="Rectangle.MouseEnter"> 
         <BeginStoryboard> 
          <Storyboard> 
           <ParallelTimeline > 
            <ColorAnimation Storyboard.TargetProperty="Fill.Color" To="#FF767C84" /> 
           </ParallelTimeline> 
          </Storyboard> 
         </BeginStoryboard> 
        </EventTrigger> 
        <EventTrigger RoutedEvent="Rectangle.MouseLeave"> 
         <BeginStoryboard> 
          <Storyboard> 
           <ParallelTimeline > 
            <ColorAnimation Storyboard.TargetProperty="Fill.Color" To="#FF5C626C" /> 
           </ParallelTimeline> 
          </Storyboard> 
         </BeginStoryboard> 
        </EventTrigger> 
       </Style.Triggers> 
      </Style> 
     </Rectangle.Style>