WPF数据触发器实现实例代码
- 时间:2015年04月02日 15:29:15 来源:魔法猪系统重装大师官网 人气:10601
WPF触发器
属性触发器——当依赖属性的值改变时调用。
数据触发器——当普通.NET属性的值改变时调用。
事件触发器——当路由事件被触发时调用。
1. 数据触发器示例:数字从0~9计数,当数字变为8时候,数字变化成红色并加粗进行显示。
0 -> 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7 -> 8 -> 9 ->0
2. 新建WPF项目,项目名称:DataTriggerDemo。
3. 新增Views文件夹,右键Views文件夹,新增用户控件Timer.xaml;并在页面中加入Button和Textblock控件。
4. 新增ViewModels文件夹,右键ViewModels文件夹,新增类TimerViewModel.cs;在代码中增加StartCommand命令和DisplayNumber属性。
1 private int displayNumber = 0;
2 public int DisplayNumber
3 {
4 get { return displayNumber; }
5 set
6 {
7 displayNumber = value;
8 NotifyPropertyChanged("DisplayNumber");
9 }
10 }
11
12 private ICommand startCommand;
13 public ICommand StartCommand
14 {
15 get
16 {
17 if (startCommand == null)
18 {
19 startCommand = new RelayCommand(param =>
20 {
21 Start();
22 }, param => true);
23 } return startCommand;
24 }
25 }
5. 在TimerViewModel中增加计数方法。
1 private void Start()
2 {
3 new Timer(new TimerCallback(param =>
4 {
5 DisplayNumber++;
6 if (DisplayNumber == 10)
7 {
8 DisplayNumber = 0;
9 }
10 })).Change(0, 1000);
11 }
6. 在Timer.xaml页面增加数据触发器代码。
1
2
14
7. 运行效果。
点击这里下载源代码。