《深入浅出WPF》读书笔记.5控件与布局(上)

《深入浅出WPF》读书笔记.5控件与布局(上)

背景

深入浅出WPF书籍学习笔记附代码。WPF中数据是核心是主动的,UI是数据的表达是被动的。

程序的本质是数据+算法;控件的本质是数据+行为;

5.控件与布局

一、6类控件派生关系

1.布局控件:可以容纳多个控件或者嵌套其他布局控件,用于UI组织和排列控件。Grid、StackPanel等等,拥有共同父类panel;

2.内容控件:只能容纳一个其他控件或者布局控件作为他的内容。Window、Button等等,共同父类ContentControl;

3.带标题的内容控件:相当于带有一个标题的内容控件,内容控件亦可容纳一个布局或者控件。GroupBox、TabItem等等,共同父类HeaderedContentControl;

4.条目控件:可以显示一列数据,一般情况下这列数据的数据类型相同。此类控件包括ListBox、ComboBox等等,共同父类ItemsControl;

5.带标题条目控件:相当于一个条目空间上加上标题显示区,TreeViewItem、MenuItem等等,共同父类HeaderItemsControl;

6.特殊内容控件:TextBox、TextBlock、Image等等;

FrameworkElement在.net Framework的基础上封装了很多WPF的专属Api;

二、ContentControl族

特点

·共同父类ContentControl

·都是控件

·内容属性名称为Content

·只能由单一元素充当其内容

三、HeaderedContentControl族

特点

·共同父类HeaderedContentControl,HeaderedContentControl是ContentControl类的派生类

·除主体内容区域内,控件还有一个显示标题区域

·内容为Content和Header,都只能容纳一个元素作为其内容

四、ItemControl族

特点

·共同父类ItemControl

·内容属性为Items和ItemsSource

`每种ItemsControl都有自己的条目容器

ListBox的SelectedValuePath和DisplayMemberPath

DisplayMemberPath:将数据源的对象值封装到TextBlock中,再包装进ListBoxItem

五、HeaderedItemsControl族

相比ItemsControl多了个标题

六、Decorator族类

·均派生自Decorator类别

·起Ui装饰作用

·内容属性为Child

·只能由单一元素充当内容

七、Shape族元素

八、Panel族元素

特点

·共同父类Panel

·主要功能是控制UI布局

·内容属性为Children

·内容可以是多个元素,Panel元素将控制他们的布局

ItemsControl强调以列表布局,panel则是对元素进行布局


panel比较重要会单独写一篇。

相关推荐
Zhao-Jichao1 小时前
AI Prompting for Everyone 课程笔记 - P21 总结 Conclusion
人工智能·笔记
欢欢李1 小时前
【LTE L3 笔记 05】LTE同步信号
笔记·无线通信·物理层·lte·空口协议
浪扼飞舟2 小时前
WPF(数据绑定)
wpf
La Pulga3 小时前
【FreeRTOS源码学习笔记】空闲任务与阻塞延时
笔记·mcu·学习·嵌入式·freertos·实时操作系统
蒸蒸yyyyzwd3 小时前
秋招学习笔记 day106
笔记·学习
小李不想当小白4 小时前
WDG看门狗(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
欢欢李5 小时前
【LTE L3 笔记 04】LTE帧结构
笔记·无线通信·物理层·lte·空口协议
Liangwei Lin7 小时前
Exchange Server 2019 部署手册
microsoft
Zhao-Jichao7 小时前
AI Prompting for Everyone 课程笔记 - P20 实验与期末项目 Lab and Final Project
前端·人工智能·笔记
lisw058 小时前
作为人类代理的大语言模型及其角色分类!
人工智能·学习·语言模型