zoukankan      html  css  js  c++  java
  • WPF,Silverlight与XAML读书笔记第二十六 控件之八 – Range控件

    说明:本系列基本上是《WPF揭秘》的读书笔记。在结构安排与文章内容上参照《WPF揭秘》的编排,对内容进行了总结并加入一些个人理解。

        不同于内容控件与Items控件显示范围随着内部内容而变化,Range控件的显示范围是固定的。Range控件继承自RangeBase类,这个类提供了Range控件的核心功能 – 存储并显示数值。这个类的成员有如下:

    属性:

    • Value,Minimum与Maximum:这是三个浮点类型的属性,用来存储当前值与值的范围。

    事件:

    • ValueChanged:在值发生变化时触发此事件。

    WPF中内建了几种Range控件 – ProgressBar,Slider,ScrollBar(不常用)与ScrollViewer(ScrollBar的替代品)。

    ProgressBar(WPF)

    适当的使用ProgressBar可以提高软件的易用性。很多软件都使用进度条,这是一种很常见的控件。

    ProgressBar中Minimum属性默认为0,Maximum属性为100(以上两个值可以重写),另外其重写了基类中如下两个属性:

    IsIndeterminate:当为True时,ProgressBar会显示一段通用的动画(用于无法计算操作具体花费时间或着懒于计算此时间)。

    Orientation:默认为Horizontal,另有一个值为Vertical,这会使进度条竖着显示。

    技巧:实现Vista系统中进度条在暂停时变黄色,停止/错误时变红色的效果。

    WPF没有内建机制完成这个功能,需要使用模版(参见)技术来实现。

    SliderBar (WPF)/ Slider(Silverlight2.0)

        SliderBar是用户可以在一个标尺上移动光标来改变当前值。SliderBar中Minimum属性默认值为0,Maximum属性默认值为10,当然这两个默认值可以在声明标签是重写,而这两个值得设置取决于你想要选择的数所在的区间。也有Orientation属性作用同ProgressBar的相同属性,而double类型的Value属性也是用来返回选定的值,不再赘述。默认情况下,当滑块设置为水平方向时左边小右边大,当设置为垂直方向时下边小上边大,而IsDirectionReversed属性设置为true时会使这个效果反过来。除了拖动滑块外,用户也可以直接点击滑块控件改变控件的值,每次点击变化的量是一个固定值,其由LargeChange属性来设置。

    SliderBar的专用的属性:

    • ToolTip:用来显示光标移动到位置当前的值。这个ToolTip的使用与配置与前文介绍ToolTip时所介绍的方式完全一致(参见)。
    • IsSnapToTickEnabled:决定光标是自动贴近刻度值还是平滑的移动到任何值。
    • Delay与Interval:用于键盘操作时,其作用与RepeatButton控件的同名属性一致。
    • TickPlacement:启用标尺的刻度,有4中值,None(默认)无标尺的简单外观,TopLeft,BottomRight与Both。举例来说,如果设置为TopLeft,当Orientation设置为Horizontal时,标尺在上方,设置为Vertical时标尺在左侧。
    • TickFrequency:确定在Slider上放置多少刻度记号,如要想每5个单位放置一个刻度就将此属性设置为5。

    下面3个属性用于在当前大范围内显示一个更小的范围。当然并不限制光标只可以在这个小范围内移动。

    • IsSelectionRangeEnabled:当这个值为true时,这个小范围选择功能可用。
    • SelectionStart:指定小范围选择的开始值。
    • SelectionEnd:指定小范围选择的结束值。

    这个子范围可以用在如用大范围显示媒体整体长度,用小范围显示已下载部分的情况下。

    ScrollViewer控件(Silverlight 2.0)

        ScrollViewer是一个容器控件,其中可以包含其他内容,最主要的是这个控件提供了一个水平与一个垂直的滚动条,以便在内容过多无法显示全部时,让浏览者通过拖动滚动条查看全部。

        HorizontalScrollBarVisibility与VerticalScrollBarVisibility属性分别用来控制水平与垂直滚动条是否可见。默认情况下,垂直滚动条可见,水平滚动条不可见。

    本文完

    参考:

    《WPF揭秘》

    《Essential Silverlight 2中文版》

  • 相关阅读:
    排序算法——希尔排序
    排序算法——直接插入排序
    排序算法——快速排序
    排序算法——冒泡排序
    一个echarts柱状图hover改变颜色的例子
    vue使用sockjs-client+stompjs进行websocket连接的方法
    vue学习日记:使用vue-cli搭建项目支持ie10和ie11的一些尝试
    vue学习日记:axios拦截器的配置
    vue学习日记:iview组件库的使用
    vue学习日记:vue发送请求
  • 原文地址:https://www.cnblogs.com/lsxqw2004/p/4627556.html
Copyright © 2011-2022 走看看