WPF中怎么使slider控件的值只取整数?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF中怎么使slider控件的值只取整数?相关的知识,希望对你有一定的参考价值。
参考技术A首先注意而RangeBase是基于浮点double类型的,不是基于整数int的,WPF中的许多度量单位都是基于浮点的。
对于Slider来说,RangeBase的Minimum(最小值)默认是0,Maximum(最大值)默认是10,Value(当前值)默认是0。
接下来就是RangeBase的剩余两个变量,SmallChange和LargeChange。SmallChange用来当Slider有焦点时,使用键盘的左右箭头来改变值的大小,而LargeChange则是点击Slider条的空白部分造成值的改变大小(和滚动条类似)。
SmallChange默认是0.1,LargeChange默认是1。
注意由于浮点数的表示涉及到精度的问题,某些值的表示无法准确而只能存储成近似值,所以一个空空的默认Slider会有如下问题:
首先XAML,一个默认Slider,下面一个TextBlock绑定Value属性来显示当前值:
2021-08-14 WPF控件专题 Slider控件详解
1.Slider 控件介绍
滑块
Maximum Minimum TickFrequency Orientation TickPlacement
Value
移动来选择一个范围的值:改其他控件的属性值 (数值型)
2.具体案例
<Grid>
<!--滑块 Orientation 方向 TickPlacement 轨道相关的刻度的位置 TickFrequency 刻度之间的间隔 IsSnapToTickEnabled true 值 Int false 浮点型 IsDirectionReversed true 水平向左 垂直 向下 -->
<Slider Name="slider1" HorizontalAlignment="Left" Margin="150,10,0,0" VerticalAlignment="Top" Maximum="100" Minimum="0" Value="50" Orientation="Horizontal" TickPlacement="Both" TickFrequency="2" IsSelectionRangeEnabled="True" SelectionStart="20" SelectionEnd="50" Width="390" Height="35" IsSnapToTickEnabled="True" SmallChange="4" LargeChange="10" IsDirectionReversed="True"/>
<Label Content="{Binding ElementName=slider1,Path=Value,Mode=OneWay}" HorizontalAlignment="Left" Margin="582,10,0,0" VerticalAlignment="Top" Width="82"/>
<TextBlock Background="Red" HorizontalAlignment="Left" Margin="240,105,0,0" TextWrapping="Wrap" Text="Slider" FontSize="{Binding ElementName=slider1,Path=Value,Mode=OneWay}" VerticalAlignment="Top" Opacity="{Binding ElementName=opSlider,Path=Value,Mode=Default}" Width="300" Height="159"/>
<Slider Name="opSlider" HorizontalAlignment="Left" Margin="150,59,0,0" Minimum="0.2" Maximum="1.0" TickFrequency="0.1" VerticalAlignment="Top" Width="467"/>
</Grid>
以上是关于WPF中怎么使slider控件的值只取整数?的主要内容,如果未能解决你的问题,请参考以下文章