WPF触发器中执行代码操作,如果操作熟练,可以帮助我们轻松实现许多功能。不过对于新手来说,他们还是需要从实战中去积累经验。#t#
DependencyProperty.RegisterAttached方法允许用户给控件/窗体等定义自己的依赖属性,其包含的CallBack参数可以允许执行某个特定方法。这允许我们在Trigger中去调用特定的事件处理。
其实严格的说WPF触发器和Trigger不太有关系,因为这相当于我们给某个对象添加了自定义属性并执行某些事件。但trigger可以恰恰利用这个好处来简介的执行业务逻辑:
- public static readonly DependencyProperty
SomethingHappenedProperty =
DependencyProperty.RegisterAttached
("SomethingHappened", typeof(bool),
typeof(Window1), new PropertyMetadata
(false, new PropertyChangedCallback
(SomethingHappened))); - public bool GetSomethingHappened
(DependencyObject d) - {
- return (bool)d.GetValue
(SomethingHappenedProperty); - }
- public void SetSomethingHappened
(DependencyObject d, bool value) - {
- d.SetValue(SomethingHappened
Property, value); - }
- public static void SomethingHappened
(DependencyObject d, Dependency
PropertyChangedEventArgs e) - {
- //do something here
- }
以上就是WPF触发器执行代码的相关操作。