[三]控件和布局
作者:互联网
[三] 控件和布局
所有内容均出自于《深入浅出WPF》一书,其作者在b站也有相关视频,本文为个人读后总结,仅供参考
控件分类
日常使用最多的六类控件
- 布局控件
- 内容控件
- 带标题的内容控件
- 带标题条目控件
- 条目控件
- 特殊内容控件
派生关系
内容模型
继承相同父类的归为同一类,以父类名字为这一类的统称
名称 | 注释 |
---|---|
ContentControl | 单一内容控件 |
ItemsControl | 条目为集合内容的控件 |
HeaderedItemsControl | 带标题的以条目为集合内容的控件 |
Decorator | UI装饰 |
Shape | 2d绘制 |
Panel | 布局 |
Adorner | 文字点缀 |
Flow Text | 流式文本元素 |
TextBox / TextBlock | 文本框 、 静态文字 |
详解
1.ContentControl 族
特点
- 派生自ContentControl类
- 都是控件
- 内容属性都是 Content
- 只能有单一元素充当内容
列表
button | buttonbase | checkbox | comboxitem |
contentControl | Frame | GridViewColumnHeader | GroupItem |
laber | ListBoxItem | ListViewitem | NavigationWindow |
RadioButton | RepeatButton | ScrollViewer | StatusBarItem |
ToggleButton | ToolTip | UserControl | Window |
2.ItemsControl 族
特点
- 派生自 ItemsControl 类
- 都是控件,用于显示列表话数据
- 内容属性为 item 或 itemSource
- 每种 ItemsControl 都有对应有自己的条目容器 (Item Container)
列表
Menu | MeunBase | ContextMenu | ComBox |
ItemControl | ListBox | ListView | TabControl |
TreeView | Selector | StatusBar |
ItemsControl 对应的 Item Contaimer
**ItemsControl | Item Contaimer** |
---|---|
Menu | MenuItem |
Combox | ComboxItem |
ContextMenu | MenuItem |
ListBox | ListBoxItem |
ListView | ListViewItem |
TabControl | TabItem |
TreeView | TreeViewItem |
StatusBar | StatusBarItem |
3.HeaderedItemsControl 族
特点
- 派生自 HeaderedItemsControl 类
- 都是控件,显示列表化的数据,同时可以显示一个标题
- 内容属性为 Items,ItemsSource,Header
列表
MenuItem | TreeViewItem | ToolBar |
4.Decorator族
特点
- 派生自 Decorator类
- UI 装饰作用
- 内容属性为 child
- 只能有单一元素充当内容
列表
ButtonChrome | ClassicBooderDecorator | ListBoxChrome | SystemDropShadowDecorator |
Border | InkPresenter | BulletDecorator | ViewBox |
AdornerDecorator |
5.Shape族
特点
- 派生自 Shape类
- 2d图形绘制
- 无内容属性
- Fill 填充,Strock 设置边线
6.Panel族
特点
- 派生自 Panel类
- 布局
- 内容属性Children
- 可以是多个元素,Panel 控制他们布局
Canvas | DockPanel | Grid | StackPanel |
WrapPanel | TapPanel | ToolBarOverflowPanel | ToolBarPanel |
UniformGrid | VirtualizingPanel | VirtualizingStackPanel |
| TapPanel | ToolBarOverflowPanel | ToolBarPanel |
| UniformGrid | VirtualizingPanel | VirtualizingStackPanel | |
标签:控件,派生,条目,布局,列表,内容,ItemsControl 来源: https://blog.csdn.net/qq_42733641/article/details/115438300