zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    Begin Example with Override Encoded SOAP XML Serialization
    State Machine Terminology
    How to: Specify an Alternate Element Name for an XML Stream
    How to: Publish Metadata for a WCF Service.(What is the Metadata Exchange Endpoint purpose.)
    Beginning Guide With Controlling XML Serialization Using Attributes(XmlSerializaiton of Array)
    Workflow 4.0 Hosting Extensions
    What can we do in the CacheMetaData Method of Activity
    How and Why to use the System.servicemodel.MessageParameterAttribute in WCF
    How to: Begin Sample with Serialization and Deserialization an Object
    A Test WCF Service without anything of config.
  • 原文地址:https://www.cnblogs.com/JustRun1983/p/2638119.html
Copyright © 2011-2022 走看看