WPF的五种绑定模式

WPF的五种绑定模式

WPF的绑定模式(mode)是枚举的,枚举值共有5个:

1、OneWay(源变就更新目标属性)

2、TwoWay(源变就更新目标并且目标变就更新源)

3、OneTime(只根据源来设置目标,以后都不会变)

4、OneWayToSource(与OneWay相反)

5、Default(可以单向或双向,是靠被值定的源或目标是否有get过set来指定的)

WPF的逻辑树与视觉树基本概念:

与ASP.NET服务器控件比较(控件为逻辑树。HTML为视觉树)

与JavaScript客户端控件比较(一个根逻辑树,HTML为视觉树)

顶级元素-布局元素-控件-附加属性

定义资源语法格式:<根元素对象.Resources>

<资源定义>

静态资源封装

WPF的五种绑定模式_第1张图片

资源字典(样式):在标记中定义资源时,通过x:key指令分配唯一的键

WPF学习总结六 - a ray of sunshine - 博客园 (cnblogs.com)

构成Style最重要的两种元素是Setter设置器和Trigger,Setter类帮助我们设置控件的静态外观风格,Trigger类则帮助我们设置控件的行为风格。

静态外观风格是通过改变一些属性值的搭配来实现的

行为风格是由对外界刺激的响应体现出来的这就是行为风格

Style中的Setter :

Setter,设置器。什么的设置器呢?属性值的。我们给属性赋值的时候一般都采用“属性名=属性值”的形式。Setter类的Property属性用来指明你想为目标的哪个属性赋值;

Setter类的Value属性则是你提供的属性值

Style的内容属性是Setters,所以我们可以直接在

触发器:Trigger,行为改变。即当某些条件满足时会触发一个行为

触发器:事件触发EventTrigger和数据触Trigger/DataTrigger

和多条件触发MultiTrigger多条件数据触发器MultiDataTrigger

Trigger :

Trigger类是最基本的触发器。类似于Setter,Trigger也有Property和Value这两个属性,Property是Trigger关注的属性名称,Value是触发条件。

Property是Trigger关注的属性名称,Value是触发条件。

Trigger类还有一个Setter属性,此属性值是一组Setter,一旦触发条件被满足,这组Setter的“属性—值”就会被应用,触发条件不在满足后,各属性值会被还原。(操作的动作)

1.如果要实现WinFrom中的Dock = Fill类似的效果,可以添加一个Grid布局,之后在里面放置控件即可,这个控件相对于外面的Grid布局就是Dock=Fill效果,或者用DockPanel布局记住,设置 LastChildFill="True",WPF的思路是先有布局再有内容。

2.不用canvas也可以做层叠效果,在Grid布局里面放多个Grid就行,不设置外面Grid的行定义和列定义,里面的Grid布局就会层叠,后面的会盖在前面的之上,可以设置后面布局的透明度查看到此显示效果。

3.如果涉及到布局缩放,ViewBox经常会用到,不过它只能含有一个布局元素,这意味着里面的所有元素内容都可能会进行缩放拉伸。ViewBox经常配合Canvas布局使用,进行矢量绘图。

4.动画经常需要更精确地控制元素的尺寸和位置,对于能应用动画的内容,最常用的布周容器是 Canvas 面板,因为Canvas 面板允许更方便地移动内容(可能相互重叠)以及改变内容的尺寸。

5.GridSplitter 对象必须放在 Grid 单元格中,最好预留一列或一行专门用于放置GridSplitter对象。

6.如果确实需要指定某些控件的大小,建议使用 Margin 属性,该属性将相对于网格的边缘进行调整控件的大小。

你可能感兴趣的:(wpf)