内容控件:
Control基类:
控制模板:ControlTemplate(几乎所有子类都对这个ControlTemplate进行了各自的实现)
Control提供的两个事件:
PreviewMouseDoubleClick:表示鼠标双击或多次点击时触发的事件
MouseDoubleClick:表示鼠标双击或多次点击时触发的事件
注:Preview开头的事件叫隧道事件或预览事件,MouseDoubleClick没有Preview开头,叫做冒泡事件。
ContentControl类(内容控件):里面可以加入任意东西,东西被继承
两个重要属性:
content
template
ButtonBase基类:
ButtonBase的属性:
属性名称 | 说明 |
---|---|
CommandTarget | 获取或设置要对其引发指定的命令的元素。 |
CommandParameter | 获取或设置一个命令参数,这个参数是传递给Command 性所指向的命令。 |
Command | 获取或设置要在按此按钮时调用的命令。 |
IsPressed | 获取当前按钮是否处于激活状态。 |
ClickMode | 获取或设置按钮的单击模式 |
IsEnabledCore | 获取的值 System.Windows.ContentElement.lsEnabled属性 |
Button:按钮
ToggleButton基类:用于判断是否选中,能否选中
CheckBox复选框
RadioButton单选框:可以用GroupName实现多选
ReapetButton重复按钮:
Delay:表示延时重复执行的毫秒数
Interval:表示重复执行回调函数的时间间隔毫秒数
Label标签
TextBlock文字块:需要写文字的地方都用得到
字体颜色:Foreground
背景颜色:Background
换行:TextWrapping
鼠标提示:ToolTip
装饰:TextDecorations
每行居中:TextAlignment
整体水平居中:HorizontalAlignment
整体竖直居中:VerticalAlignment
字体伸缩:FontStretch
TextBox文本框:懂得都懂
RichTextBox富文本框:
FlowDocument:流文档,由一个或多个Block构成,所以它有一个Blocks属性。
Block块:有许多子类
List有序列表
Paragragh段落
Section分组
Table网格
TextRange属性:返回任意指定形状的 TextRange对象
Run文本块
Popup弹出窗口:
IsOpen:获取或设置Popup是否可见
PlacementTarget:获取或设置Popup控件在哪个控件身边打开
StaysOpen:默认值true,表示Popup打开后,如果失去焦点,Popup是否继续显示
注:Popup中只能接收一个元素
Image图像控件:
Source:路径
Stretch:图像格式
统一资源标识Uri:表示和访问资源
格式:协议+授权+路径
协议:pack//
授权:一种访问编译时已经知道的文件,用application:///
一种用于访问编译时不知道,编译时才知道的,用siteoforigin:///
一般用逗号代替斜杠,即application:,,,
路径:分为绝对路径和相对路径,一般用相对路径
GroupBox标题容器控件:
Header控件:头部内容
ScrollView控件:
ScrollBar滚动条:
Slider滑动条
ProgressBar类定义:
Islndeterminate属性:如果为true,表示以动画从左到右滑动的方式展示进度效果
Orientation属性:表示进度条的方式,水平时从左至右增长,垂直时从下到上增长
Calender日历控件
DatePicker日历控件
Expander折叠控件:
Expander_Expanded事件:出现
Expander_Collapsed事件:隐藏
MediaElement媒体播放器
集合控件:
ItemsControl基类:集合控件的基类,可以包含许多控件
Selector基类:
属性名称 | 说明 |
---|---|
SelectedValue | 获取或设置SelectedValuePath属性指定的元素的属性值 |
Selectedltem | 获取或设置当前所选内容中的第一项或如果所选内容为空则返回null |
SelectedIndex | 获取或设置当前所选内容或返回的第一项的索引为负一(-1)如果所选内容为空。 |
SelectedValuePath | 获取或设置Selectedltem当前元素的某个属性名,这个元素属性名将决定SelectedValue的值 |
IsSynchronizedWithCurrentltem | 是否同步当前项。 |
Selectedltem和SelectedValue有点类似,都是object类型。但是,他们俩不一定指同一个内容。只有SelectedValuePath没设置时,二者才相等。
ListBox列表控件:
DisplayMemberPath:显示你要的属性
SelectedValuePath:同上
ListBoxItem:可以写内容
ListView数据列表控件:继承于ListBox
DisplayMemberBinding:关联你要的属性
SelectionChanged:选择传入的内容
DataGrid数据列表控件
ComboBox下拉框控件:
TabControl控件:只支持单选
TreeView树控件:类似文件夹目录
IsSelected属性:是否已经选择
IsExpand属性:是否展示
Menu菜单:
MenuItem控件:列表
Icon属性:图片
ContextMenu上下文菜单:
属性名称 | 说明 |
---|---|
HorizontalOffset | 获取或设置目标原点和弹出项对齐之间的水平距离点。 |
StaysOpen | 是否保持打开状态 |
CustomPopupPlacementCallback | 获取或设置ContextMenu指示在屏幕位置的回调 |
HasDropShadow | 是否有投影出现的上下文菜单。 |
Placement | 获取或设置ContextMenu显示的相对位置 |
PlacementRectangle | 获取或设置相对于其上下文菜单位于在打开时的区域。 |
PlacementTarget | 获取或设置ContextMenu打开时的相对控件 |
lsOpen | 是否打开 |
VerticalOffset | 获取或设置目标原点和弹出项对齐之间的垂直距离点。 |
StatusBar状态栏:通常被当成一个布局控件来使用
{Binding ElementName=控件命,Path=控件属性}