谈谈WPF中的依赖属性

2010年7月14日 分类: WPF

WPF中引入了一个非常重要的“新的类型”叫依赖属性,在WPF中我们会经常用到它,他是贯穿WPF中实现数据绑定、动画效果等特效的实现。依赖属性,是依靠多个数据或者程序来为它提供值的,这些数据可能随时会改变,依赖属性的值也会随之改变,或是从上级元素传递过来的值。依赖属性最大的特性就是为我们提供了变更通知的能力。
依赖属性给我们提供了那些特性呢?
1.变更通知
2.属性值继承
3.对多提供程序的支持

如何定义一个依赖属性呢?

public class TextBoxEx : TextBox
{
 public static readonly DependencyProperty IsFocusProperty =
 DependencyProperty.Register("IsFocus",                  //依赖属性的名称
 typeof(bool),               //依赖属性的类型
 typeof(TextBoxEx),          //依赖属性所有者的类型
 new PropertyMetadata(false, new PropertyChangedCallback(OnIsFocusPropertyChanged)) //元数据(初始值false,数据发生变化的委托OnIsFocusPropertyChanged)
 );

 public bool IsFocus
 {
 get { return (bool)this.GetValue(IsFocusProperty); }
 set { this.SetValue(IsFocusProperty, value); }
 }

 private static void OnIsFocusPropertyChanged(DependencyObject o, DependencyPropertyChangedEventArgs e)
 {
 //数据发生变化的实现
 }
}

这就是一个依赖属性最简单的定义,我们不需要实现它的具体方法,就可以直接使用它的一系列特性。例如:在xaml中的数据绑定等

原创文章,转载请注明: 转载自.NET开发者

本文链接地址: 谈谈WPF中的依赖属性

 

Related posts:

  1. WPF中RichTextBox设置字体样式的方法
  2. Winform/WPF实例中的相互操作
  3. WPF中单击标题行可排序的GridView
  4. WPF中的拖放(三)
  5. WPF最大化避免覆盖任务栏
标签: ,
目前还没有任何评论.

Leave a Comment