WPF控件分类(2)

WPF控件可以看作容器,内容可为数据或嵌套控件,形成控件树。逻辑树关注控件组成的层次结构,而可视元素树还包括控件本身的组成结构。内容属性是控件引用内容对象的特性,XAML中可通过Attribute=Value或标签内容设定。ContentControl族和HeaderedContentControl族分别用于展示单一内容和带标题的数据。
摘要由CSDN通过智能技术生成

WPF的内容模型
你可以把控件想象成一个容器,容器里装的东西就是它的内容。控件的内容可以直接
是数据,也可以是控件。当控件的内容还是控件的时候就形成了控件的嵌套。我们把被
嵌套的控件称为子级控件,这种控件嵌套在UI布局时尤为常见。因为允许控件嵌套,所
以WPF的UI会形成一个树形结构。如果不考虑控件内部的组成结构,只观察由控件组成
的“树”,那么这棵树为逻辑树(LoicalTree);WPF控件往往是由更基本的控件构成的,即
控件本身就是一颗树,如果连控件本身的树也考虑在内,则这棵比逻辑树更“繁茂”的树称
为可视元素树(Visual Tree)。

控件是内存中的对象,控件的内容也是内存中的对象。控件通过自己的某个属性引
用着作为其内容的对象,这个属性称为内容属性(Content Property)。“内容属性”是个
统称,具体到每种控件上,内容属性都有自己确切的名字——有的直接就叫Content,有的
叫Child;有些控件的内容可以是集合,其内容属性有叫Items或Children的。

控件的内容属性与XAML标签的内容存在一定的对应关系,下面稍作解析。
所谓“于理”,就是说我们严格按照语法来行事。控件不是有内容属性吗?那在XAML
里我们就应该能够使用Attribute=Value或者属性标签的形式来为内容赋值。比如想把字符
串“OK”作为内容赋值给一个Button,下面两种写法都是正确的:

或者

<Button.Content>
OK
</Button.Content>

控件的内容就应该是标签的内容、子级

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值