zoukankan      html  css  js  c++  java
  • 鼠标悬浮,闪烁动画;绑定变量,闪烁动画

    前端代码

     1 <Window x:Class="WpfApp2.Window3"
     2         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
     3         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
     4         xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
     5         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
     6         xmlns:local="clr-namespace:WpfApp2"
     7         mc:Ignorable="d"
     8         Title="Window3" Height="450" Width="800">
     9     <Grid>
    10         <StackPanel>
    11             <TextBlock Margin="5" 
    12                        Text="test"
    13                        FontSize="28"
    14                        FontWeight="Bold">
    15                 <TextBlock.Foreground>
    16                     <SolidColorBrush Color="Black"/>
    17                 </TextBlock.Foreground>
    18                 <TextBlock.Style>
    19                     <Style TargetType="TextBlock">
    20                         <Style.Triggers>
    21                             <EventTrigger RoutedEvent="TextBlock.MouseEnter">
    22                                 <EventTrigger.Actions>
    23                                     <BeginStoryboard Name="aa">
    24                                         <Storyboard>
    25                                             <ColorAnimation From="Black" 
    26                                                             To="Red" 
    27                                                             RepeatBehavior="Forever" 
    28                                                             Duration="0:0:0.5" 
    29                                                             Storyboard.TargetProperty="(TextBlock.Foreground).(SolidColorBrush.Color)" />
    30                                         </Storyboard>
    31                                     </BeginStoryboard>
    32                                 </EventTrigger.Actions>
    33                             </EventTrigger>
    34                             <EventTrigger RoutedEvent="TextBlock.MouseLeave">
    35                                 <EventTrigger.Actions>
    36                                     <StopStoryboard BeginStoryboardName="aa"/>
    37                                 </EventTrigger.Actions>
    38                             </EventTrigger>
    39 
    40                             <DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=local:Window3},Path=IsSelected}" Value="true">
    41                                 <DataTrigger.EnterActions>
    42                                     <BeginStoryboard Name="bb">
    43                                         <Storyboard>
    44                                             <ColorAnimation From="Green" 
    45                                                             To="Yellow" 
    46                                                             RepeatBehavior="Forever" 
    47                                                             Duration="0:0:0.5" 
    48                                                             Storyboard.TargetProperty="(TextBlock.Foreground).(SolidColorBrush.Color)" />
    49                                         </Storyboard>
    50                                     </BeginStoryboard>
    51                                 </DataTrigger.EnterActions>
    52                             </DataTrigger>
    53                             <DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=local:Window3},Path=IsSelected}" Value="false">
    54                                 <DataTrigger.EnterActions>
    55                                     <StopStoryboard BeginStoryboardName="bb" />
    56                                 </DataTrigger.EnterActions>
    57                             </DataTrigger>
    58                         </Style.Triggers>
    59                     </Style>
    60                 </TextBlock.Style>
    61             </TextBlock>
    62         </StackPanel>
    63     </Grid>
    64 </Window>

    效果已经实现,后端代码协助调试,变量的绑定而已,模拟现实操心,2秒后绑定值变动

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using System.Threading;
     6 using System.Threading.Tasks;
     7 using System.Windows;
     8 using System.Windows.Controls;
     9 using System.Windows.Data;
    10 using System.Windows.Documents;
    11 using System.Windows.Input;
    12 using System.Windows.Media;
    13 using System.Windows.Media.Imaging;
    14 using System.Windows.Shapes;
    15 
    16 namespace WpfApp2
    17 {
    18     /// <summary>
    19     /// Window3.xaml 的交互逻辑
    20     /// </summary>
    21     public partial class Window3 : Window
    22     {
    23         public Window3()
    24         {
    25             InitializeComponent();
    26 
    27             Thread th = new System.Threading.Thread(() =>
    28             {
    29                 while (true)
    30                 {
    31                     Thread.Sleep(2000);
    32                     Dispatcher.Invoke(() =>
    33                     {
    34                         IsSelected = true;
    35                     });
    36                     Thread.Sleep(3000);
    37                     Dispatcher.Invoke(() =>
    38                     {
    39                         IsSelected = false;
    40                     });
    41                 }
    42             });
    43             th.IsBackground = true;
    44             th.Start();
    45         }
    46 
    47         public bool IsSelected
    48         {
    49             get { return (bool)GetValue(IsSelectedProperty); }
    50             set { SetValue(IsSelectedProperty, value); }
    51         }
    52 
    53         public static readonly DependencyProperty IsSelectedProperty =
    54             DependencyProperty.Register("IsSelected", typeof(bool), typeof(Window3), new PropertyMetadata(false));
    55     }
    56 }
  • 相关阅读:
    QT学习笔记——06-Day16_C++_QT
    QT学习笔记——06-Day15_C++_QT
    QT学习笔记——06-Day14_C++_QT
    c++提高学习笔记——05-c++STLday13_贪吃蛇案例
    c++提高学习笔记——05-c++STLday12
    c++提高学习笔记——05-c++STLday11
    混子的 后缀数组 刷题记录
    POJ2528Mayor's posters 线段树,离散化技巧
    莫比乌斯反演 刷题记录
    P问题,NP问题,NPC问题学习笔记
  • 原文地址:https://www.cnblogs.com/xuling-297769461/p/11647762.html
Copyright © 2011-2022 走看看