WPF知识点总结

一、WPF中什么是样式

首先明白WPF中样式属于资源中重要的一种。同时样式也是属性值的集合,能被应用到一个合适的元素中,或者说能将一组属性应用到多个元素。

WPF中样式可以设置任何依赖属性。

WPF中样式也支持触发器,通过属性的改变,触发一组活动,包括改变某个控件的样式。

WPF中元素只能使用一个样式。

样式有继承的特性,样式可以继承样式。

二、绑定(Binding )的基础用法

WPF里分三种:Binding、PriorityBinding、MultiBinding

这三种Binding的基类都是BindingBase,而BindingBase又继承于MarkupExtension。

常见的使用Binding方法是:

  1. 针对于继承于FrameworkElement控件SetBinding(DependencyProperty dp,String path),SetBinding(DependencyProperty dp,BindingBase binding),其中FrameworkElement中SetBinding只对DependencyProperty有效。

2、 另一种是

BindingOperations.SetBinding(currentFolder,TextBlock.TextProperty,binding)

BindingOperations.SetBinding的原型是Public、static BindingExpressionBase SetBinding(DependencyObject target,DependencyProperty dp,BindingBase binding)

3 、清除Binding:

BindingOperations.ClearBinding(currentFolder,TextBlock.TextProperty);(删除currentFolder上的TextBlock.TextProperty绑定)

BindingOperations.ClearAllBindings(currentFolder);( 删除currentFolder上的所有绑定。

直接对Dependency Property赋值也可以解除binding,不过只对单向binding有效。)

三、解释这几个类的作用及关系: Visual, UIElement, FrameworkElement, Control 。

它们四个的关系:从System.Windows.Controls命名空间中看,依次的继承关系是:

·Visual继承UIElement

·UIElement继承FrameworkElement

·FrameworkElement继承Control

  1. Visual主要作用是为WPF提供2D呈现支持,主要包括输出显示,坐标转换,区域剪切等。
  2. UIElement的主要作用是构建WPF元素和基本呈现特征的基类。例如其中定义很多与输入和焦点有关的特性,例如键盘事件,鼠标,还有一些与WPF事件模型有关的API。
  3. FrameworkElement的主要作用是为定义的WPF元素添加一些功能。例如,布局定义 逻辑树 对象生命周期事件  支持数据绑定和动态资源引用 支持样式和动画。
  4. Control的主要作用是为自定义应用程序控件提供基础。因为它是创建自定义应用程序控件的基类,作用就是可以重写Control类所提供的属性,方法,事件等,为自定义控件添加自定义逻辑。构建WPF应用程序页面的Window类也派生自它。

四、属性变更通知

1、INotifyPropertyChanged向客户端发出某一属性值更改的通知。

2、 ObservableCollection类,它是实现 INotifyCollectionChanged 接口的数据集合的内置实现。表示一个动态数据集合,在添加项、移除项或刷新整个列表时,此集合将提供通

你可能感兴趣的:(wpf)