关于WPF控件

控件时WPF里不可缺少的东西,在编程的时候我们可以对WPF使用上百个控件。有简单的当然也有复杂的,下面我们一起来了解一下吧。

 

  • 简单控件

     简单控件是没有Content属性的控件,例如,Button类可以包含任意形状或任意元素,这对于简单控件时没有问题的。下面是一些简单控件和它们的功能

 

  1. PasswordBox

PasswordBox控件用于输入密码,这个控件有用于输入密码的专用属性,例如,PasswordChar属性定义了在用户输入密码时显示的字符,Password属性可以访问输入的密码。PasswordChanged事件在修改密码时立即调用。和MVC里面的<input type="password" />类似。

 

  1. ScrollBar

ScrollBar控件包含一个Thumb,用户可以从Thumb中选择一个值,例如,如果文档在屏幕中放不下,就可以使用滚动条。一些控件包含滚动条,如果内容过多,就显示滚动条。

 

  1. ProgressBar

    使用ProgressBar控件,就是一个进度条,value属性表示进度,范围是0-100;

 

  1. Slider

使用Slider控件,是一个滑动条,用户可以移动Thumb,选择一个范围值,ScrollBar、ProgressBar和Slider派生自同一个基类RangeBase,常用于音量控制,视频播放等

 

  1. Textbox

TextBox控件用于显示简单的去格式文本,简单来说就是一个文本框,文本框控件可以用来获取用户输入或显示文本。文本框可以用来编辑文本,也可以只读方式显示文本。但也可以显示多个行。通过Text属性可以获取或设置文本框的输入或显示的文本。

  1. RichTextBox

RichTextBox控件,是一个富文本框控件,和文本框相比,它能够处理有格式的文本,还可以显示字体、颜色、链接、嵌入的图像等。实际上,富文本框能够提供类似字处理应用程序的文本操作和显示功能,如赋值、剪切、粘贴、全选等

  1. Calendar

Calendar控件可以显示年份、月份或10年,用户可以选择一个日期或日期范围,和日历一样的。

 

  1. DataPicker

DataPicke控件是一个日期选择控件,供用户选择日历。

 

  • 内容控件

ContentControl有Content属性,利用Content属性,可以给控件添加任意内容,因为Button类派生自基类ContentControl,所以可以在这个控件中添加任意内容。

 

1ButtonRepeat、ButtonToggle、ButtonCheckBox、RadioButton

Button、RepeatButton、ToggleButton和GridViewColumnHeader类派生自同一个基类ButtonBase。所有这些按钮都想赢Click事件。RepeatButton类会重复引发Click事件,直到释放按钮为止。ToggleButton是CheckBox和RadioButton的基类。这些按钮有开关状态。CheckBox可由用户选择和取消选择,RadioButton可以由用户选择。清除RadioButton的选择必须通过编程方式实现。

 

    1. Button

     按钮控件允许用户通过单击来执行操作。每当用户单击按钮时,即可调用按钮的事先定义的Click事件处理程序。

另外按钮显示的文本可以通过其Content属性指定,按钮还可以使用Image属性显示图像。

    1. RadioButton

单项按钮由RadioButton类实现。可以为用户提供由两个或多个互斥选项组成的选项集。多个单选框可以组成一个组,对于同一组内的所有单项按钮而言,用户一次只能选中一个单项按钮。

    1. CheckBox

复选框控件,它可以用来指定某个条件是打开还是关闭的,就是我们经常使用的是/否,真/假选项。多个复选框也可以组合为一个组,用户可以选择组中的一个或多个复选框。

注:单项按钮和复选框最大区别在于在单项按钮组中,用户一次只能选择一个单选按钮,但是在复选框中,用户可以选择任意数量的复选框。

 

  1. Label

Label类表示控件的文本标签。这个类也支持放文件,如:菜单命令

  1. Frame

From控件支持导航。使用Navigate()方法可以导航到一个页面内容上。如果该内容是一个页面,就使用WedBrowser控件来显示。

 

  1. ListBoxItem

ListBoxItem是ListBox控件中的一项。

  1. StatusBarItem

StatusBarItem是StatusBar控件中的一项。

 

 

 

  1. ScrollViewer

ScrollViewer控件是一个包含滚动条的内容控件,可以吧任意内容放入这个控件中,滚动条会在需要时显示。

 

  1. ToolTip

ToolTip创建一个弹出窗口哦,以显示控件的附加信息。

 

  1. UserControl

   将UserControl类用作基类,可以为创建自定义控件提供一种简单方式。但是,基类UserControl不支持模板。

 

  1. Window

Window类可以创建窗口和对话框。使用这个类,会获得一个带有最小化/最大化/关闭按钮和系统菜单的框架。在显示对话框时,可以使用ShowDialog()方法,Show()方法打开一个窗口。如图所示:

关于WPF控件_第1张图片

 

  1. NavigationWindow

类NavigationWindow派生自Window类,支持内容导航

 

  • 带标题的内容控件

带标题的内容控件派生自HeaderContentControl基类。HeaderContentControl类又派生自基类ContentControl。HeaderContentControl类的Header属性定义了标题的内容,HeaderTemplate实行可以对标题进行完全的定制。派生自基类HeaderContentControl的控件

 

  1. Expander

使用Expander控件,可以创建一个带对话框的“高级”模式,它在默认情况下不显示所有的信息,只有用户展开它,才会显示更多的信息。在未展开模式下,只显示标题信息;在展开模式下显示内容,如图所示:

关于WPF控件_第2张图片

  1. GroupBox

GroupBox控件提供了边框和标题来组合控件,如图所示:

  1. TabItem

    TabItem控件是TabControl类中的项。TabItem的Header属性定义类标题的内容,这些内容用TabControl的标签显示。

 

  • 项控件

ItemsControl类包含一个可以用Items属性访问的数据项列表。派生自ItemsControl的类。

  1. Menu、ContexMenu

Menu类和ContextMenu类派生自抽象基类MenuBase。把MenuItem元素放在数据项列表和相关联的命令中,就可以给用户提供菜单

Menu菜单如图所示:   

关于WPF控件_第3张图片

  1. StatusBar

StatusBar控件通常显示在应用程序的底部,为用户提供状态信息。可以把StatusBarItem元素放在StatusBar列表中

 

  1. TreeView

树形控件,要分层显示数据项,可以使用TreeView控件,使用TreeViewItems作为分层点

效果如图所示:

关于WPF控件_第4张图片

  1. ListBox,ComboBox、TabControl

ListBox、ComboBox和TabControl都有相同的抽象基类Selector。这个基类可以从列表中选择数据项。

4.1ListBox显示列表中的数据项,可以横着也可以竖着,能获取选中的值,可以用Separator做分隔符。

4.2ComboBox有一个附带的Button控件,只有单击该按钮,才会显示数据项,是一个下拉框选项

4.3、在TabControl中内容可以排列为表格形式。Tab选项卡和对应容器。

  1. DataGrid

   DataGrid控件是显示数据的可定制网格,用于显示表格数据。

 

  • 带标题的项控件

   HeaderItemsControl是不仅包含数据项而且包含标题的控件的基类。HeaderItemsControl类派生自ItemsControl。

  1. MenuItem

菜单类Menu和ContextMenu包含MenuItem类型的数据项。菜单项可以连接到命令上,因为MenuItem类实现了ICommandSource类型的数据项。

  1. TreeViewItem

TreeViewItem类可以包含TreeVIewItem类型的数据项

  1. ToolBar

    ToolBor控件是一组控件,被称为工具栏(通常是Button和Separator元素)的容器。可以将ToolBar放在ToolBarTray中,它会重新排列ToolBar控件。

 

  • 修饰

    给单个元素添加修饰可以使用Decorator类完成。Decorator是一个基类,派生自它的类有Border、Viewbox和BulletDecorator。主题元素如ButtonChrome和ListBoxChrome也是修饰器。

  1. Border类放在其他控件内部,给其他控件画边框,其他容器必须支持双标签。
  2. Viewbox将其子控件拉伸并缩放到可用的空间中。StretchDirection和Stretch属性专用于Viewbox的功能,它们允许设置子元素是否双向拉伸,以及是否保持宽高比。(子控件都有Stretch属性控制拉伸的)
  3. BulletDecorator类用一个项目符号修饰其子控件,子控件可以是任意元素

你可能感兴趣的:(C#_WPF)