我有一个最小值为-127且最大值为127的滑块。启动时,滑块位于中间,因此值为0。 是否可以在勾号处显示文本0,以便您可以看到中心的位置?
<Slider Margin="3"
Minimum="-127"
Maximum="127"
TickPlacement="BottomRight"
TickFrequency="2"
IsSnapToTickEnabled="True"
SmallChange="1" />
这是我滑块的图片。
答案 0 :(得分:0)
我认为单独使用滑块没有办法,我会尝试:
<StackPanel HorizontalAlignment="Center">
<Slider Grid.Row="2" Margin="3" Width="150"
Minimum="-127"
Maximum="127"
TickPlacement="BottomRight"
TickFrequency="2"
IsSnapToTickEnabled="True"
SmallChange="1" />
<TextBlock Text="0" HorizontalAlignment="Center" Margin="0,-5,0,0"/>
</StackPanel>
编辑:我刚刚意识到你并不陌生,所以你必须想到这个微不足道的解决方案......
答案 1 :(得分:0)
这就是我得到我想要的东西。我使用Slider下的DockPanel来布局TextBlocks。 一个用于中心0,一个用于设置最大值,另一个用于设置最小值。
我找不到任何能够达到我想要的其他解决方案。如果有,请在此处发布:)
XAML:
<StackPanel Orientation="Vertical">
<Slider x:Name="SpeedSlider"
Margin="3"
Foreground="DarkGray"
Value="{Binding SliderValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Maximum="{Binding Steps,
Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged}"
Minimum="{Binding MinSteps,
Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged}"
SmallChange="2"
TickFrequency="4"
TickPlacement="BottomRight"
ToolTip="{Binding ElementName=SpeedSlider,Path=Value}">
</Slider>
<DockPanel>
<TextBox DockPanel.Dock="Left"
Text="{Binding MinSteps,
Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged}"
Width="100"
Background="Transparent"
IsReadOnly="True"
BorderThickness="0" />
<TextBox DockPanel.Dock="Right"
Text="{Binding Steps,
Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged}"
Width="100"
HorizontalContentAlignment="Right"
Background="Transparent"
IsReadOnly="True"
BorderThickness="0" />
<TextBlock DockPanel.Dock="Right"
Text="0"
HorizontalAlignment="Center" />
</DockPanel>
</StackPanel>
图像: