WPF触发器(Trigger、DataTrigger、EventTrigger)

WPF中有种叫做触发器的东西(记住不是数据库的trigger哦)。它的主要作用是根据trigger的不同条件来自动更改外观属性,或者执行动画等操作。

WPFtrigger的主要类型有:Trigger、MultiTrigger、DataTrigger、MultiDataTrigger、EventTrigger几种。从字面意思上我们想大家已经知道个大概,接下来我将还会用实例代码逐一进行介绍。trigger主要运用的场景在Style、ControlTemplate、DataTemplate三个地方。在这些地方可以使用trigger,具体视情况而定。

1.在Style中使用各种trigger 

在style中使用的trigger主要是属性的触发器,当属性的值发生改变是将会引发触发器。

a.普通属性trigger  当鼠标滑过时字体变成红色

	
            
                
            
        

b. 普通属性MultiTrigger   当checkbox勾选并且鼠标滑过时字体变成绿色

	
            
                
            
        


c.EventTrigger 鼠标划入长度变长 鼠标移出 长度变短

 
            
                
            
        

2.在ControlTemplate中使用trigger

在ControlTemplate中使用的trigger主要是在controltemplate中的元素的触发器,当属性的值发生改变是将会引发触发器。

属性为“Border” 的鼠标滑过时背景变色,其他的trigger同上面的style一样 这里就不多举例了


3.在DataTemplate中使用trigger

在DataTemplate中使用trigger可以根据绑定的数据不同显示不同的内容。


                
                    
                        
                            
                                
                                
                            
                            
                                
                                    
                                    
                                    
                                    
                                
                            
                        
                        
                            
                                
                                    
                                    
                                
                                
                                    
                                
                            
                            
                                
                                    
                                    
                                
                                
                                    
                                
                            
                            
                                
                                
                            
                            
                                
                                
                            
                        
                    
                
            

这是一个treeview控件 根据绑定的isdir值不同 可以显示icon是一个目录(文件夹)或者是一个文件,看是不是很简单呢

以上只是简单的介绍了trigger的一些用法,具体的功能大家可以自由发挥,这也是wpf的强大之处



你可能感兴趣的:(wpf)