WPF学习(3) – WPF控件

简介:

控件可以根据它们所对应的继承关系分成 4 个不同的种类:

  • 内容控件
  • Items 控件
  • Range 控件
  • 文本和墨水控件

1. 内容控件

内容控件是只允许包含单一项(item)的简单控件。内容控件都继承自System.Windows.Controls.ContentControl,它们拥有只含有一项的Object 类型的Content 属性

WPF 自带的内容控件有3 大种类:

  • 按钮
  • 简单容器
  • 带头(header)的容器

1.1 按钮

按钮控件完全继承自 ButtonBase 类,这些控件是:

  • Button
  • RepeatButton, 会在按钮一直被按着的情况下触发点击事件
  • ToggleButton,

          第1 次点击它的时候,IsChecked 属性会被设为true;再点击一次,就被设为了false.

          ToggleButton 还有一个IsThreeState 属性,如果把它设为true 的话,IsChecked 就会有3 种值:true、false或者null。事实上,IsChecked 是Nullable<Boolean>类型的。第1 次点击ToggleButton 会把IsChecked 设为true,第2 次则把它设为null,第3 次把它设为false

  • CheckBox

          它可以区分是被鼠标点击还是被键盘点击。它可以在被点击时记录选中(checked)或者未选中(unchecked)状态。它支持3 种状态模式,分别为选中(checked)、不确定(indeterminate)、未选中(unche- cked)。 
          CheckBox 和ToggleButton 只有外观上的差别!CheckBox除了在继承ToggleButton 时重写了控件默认样式以及视觉外观以外,其他都与ToggleButton 完全一样

  • RadioButton

          RadioButton 是另一种从ToggleButton 继承过来的控件,但它的特殊在于支持互斥性。当多个RadioButton被放在一个组里,一次只有一个可以被选中

 

1.2 简单容器

  • Lable
  • ToolTip
  • Frame, 很像HTML的Frame, 需要指定一个Source

1.3 带头(header)的容器

  • GroupBox
  • Expander

2. Items控件

WPF 的另一种主要控件种类是Items 控件。Items 控件包含了一个拥有许多Item 的集合而不是只是一条内容。

2.1 选择器

选择器(selector)作为Items 控件,它的Item 不但可以被索引而且可以被选择。Selector 抽象类继承自ItemsControl,并添加了一些属性来处理选择

WPF 有4 种继承自Selector 的控件:

  • ComboBox
  • ListBox
  • ListView

         ListView 从ListBox 继承而来,不管是从外观还是实际的操作上都很像ListBox. 增加了一个View属性,可以指定View为GridView类型

  • TabControl

2.2  菜单

  • Menu
  • ContextMenu

2.3 其它Items控件

  • TreeView
  • ToolBar
  • StatusBar

 

3. Range控件

Range 控件不会像内容控件或者Items 控件那样渲染任意内容,它们仅在一个指定的范围内存储并且显示数值。Range 控件的核心功能来自于一个叫作RangeBase 的抽象类。这个类定义了浮点数类型的属性来存储当前的值以及范围的端点:Value、Minimum 和Maximum。它还定义了一个简单的ValueChanged 事件

  • ProgessBar
  • Slider

 

4. 文本和墨水控件

WPF 包含了一些用来显示和编辑文字的控件

  • TextBox
  • RichTextBox
  • PasswordBox
  • InkCanvas


本文转自JustRun博客园博客,原文链接:http://www.cnblogs.com/JustRun1983/archive/2012/08/14/2638119.html,如需转载请自行联系原作者

目录
相关文章
|
XML 开发框架 前端开发
WPF学习之基础知识篇
WPF(Windows Presentation Foundation)具有一个复杂且强大的架构,旨在提供丰富的用户界面、图形、动画和多媒体功能。
628 9
|
开发框架 缓存 前端开发
循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发(11) -- 下拉列表的数据绑定以及自定义系统字典列表控件
循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发(11) -- 下拉列表的数据绑定以及自定义系统字典列表控件
|
C# 开发者 Windows
一款基于Fluent设计风格、现代化的WPF UI控件库
一款基于Fluent设计风格、现代化的WPF UI控件库
835 1
|
C# Windows
WPF中如何使用HandyCotrol控件库
WPF中如何使用HandyCotrol控件库
2327 1
|
开发框架 前端开发 JavaScript
WPF应用开发之控件动态内容展示
WPF应用开发之控件动态内容展示
|
开发框架 前端开发 JavaScript
循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发(3)--自定义用户控件
循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发(3)--自定义用户控件
|
C# 前端开发 UED
WPF数据验证实战:内置控件与自定义规则,带你玩转前端数据验证,让你的应用程序更上一层楼!
【8月更文挑战第31天】在WPF应用开发中,数据验证是确保输入正确性的关键环节。前端验证能及时发现错误,提升用户体验和程序可靠性。本文对比了几种常用的WPF数据验证方法,并通过示例展示了如何使用内置验证控件(如`TextBox`)及自定义验证规则实现有效验证。内置控件结合`Validation`类可快速实现简单验证;自定义规则则提供了更灵活的复杂逻辑支持。希望本文能帮助开发者更好地进行WPF数据验证。
653 0
|
C# UED 定位技术
WPF控件大全:初学者必读,掌握控件使用技巧,让你的应用程序更上一层楼!
【8月更文挑战第31天】在WPF应用程序开发中,控件是实现用户界面交互的关键元素。WPF提供了丰富的控件库,包括基础控件(如`Button`、`TextBox`)、布局控件(如`StackPanel`、`Grid`)、数据绑定控件(如`ListBox`、`DataGrid`)等。本文将介绍这些控件的基本分类及使用技巧,并通过示例代码展示如何在项目中应用。合理选择控件并利用布局控件和数据绑定功能,可以提升用户体验和程序性能。
769 0
|
前端开发 C#
wpfui:一个开源免费具有现代化设计趋势的WPF控件库
wpfui:一个开源免费具有现代化设计趋势的WPF控件库
1216 0
|
开发框架 前端开发 C#
使用WPF开发自定义用户控件,以及实现相关自定义事件的处理
使用WPF开发自定义用户控件,以及实现相关自定义事件的处理