• WPF触发器与模板


    触发器

    触发器可以理解为,当达到了触发的条件,那么就执行预期内的响应,可以是样式、数据变化、动画等。触发器通过Style.Triggers集合连接到样式中,每个样式都可以有任意多个触发器,并且每个触发器都是System.Windows.TriggerBase的派生类实例,以下是触发器的类型:

    • Trigger:监测依赖属性的变化、触发器生效
    • MultiTrigger:通过多个条件的设置、达到满足条件、触发器生效
    • DataTrigger:通过数据的变化、触发器生效
    • MultiDataTrigger:多个数据条件的触发器
    • EventTrigger:事件触发器,触发了某类事件时,触发器生效

    属性触发器

    Trigger:监测依赖属性的变化、触发器生效

    
    
        
            
            
            
            
        
        
            
                

    Trigger类定义的属性

    Tirgger属性说明
    Property Value使用属性触发器,Property和Value属性用于指定触发器的激活时间。例如,Property = “IsMouseOver” ,Value = “True”
    Setters一旦激活触发器,就可以使用Setters定义一个Setter元素集合,来改变属性值。Setter类定义Property、TargetName和Value属性,已修改对象属性。
    EnterActions ExitActions除了定义 settm之 外,还可以定义 EnterActions 和 ExitActions。使用这两个属性,可以定义一个TriggerAction元素集合。EnterActions在启动触发器时激活(此时通过属性触发器应用Property/Value组合)。ExitActions在触发器结束之前激活(此时不再应用Property/Value组合)

    多触发器

    MultiTrigger:通过多个条件的设置、达到满足条件、触发器生效

    MultiTrigger有一个Conditions属性,可以在其中设置属性的有效值。还有一个Setters属性,可以在其中指定需要设置的属性

    
    
        
            
    
            
    
        
        
            
                
                
                
            
        
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55

    数据触发器

    DataTrigger:通过数据的变化、触发器生效