3

我正在制作一个 Windows Phone 7 应用程序,并放入了一个滑块。它从 1 开始,到 80 结束。我想要它,所以当您停止滑块时,它会显示滑块在文本块中的任何位置的值。(比如如果有人中途停下来,文本块会说 40)

4

4 回答 4

15

最简单的方法是将滑块值属性绑定到您的 Textblocks Text 属性,然后每次更改时都会更新该值。您也可以创建一个转换器,因为 Sliders Value 是双精度值,然后使用转换器您也可以将此值转换为 Int。

Text="{Binding ElementName=YourSlider,Path=Value}"
于 2012-04-19T10:06:04.980 回答
3

只需在停止拖动/更改滑块后触发的事件中使用 Slider.Value.ToString() 设置 TextBlock.Text。

如果需要,还可以使用 Math.Round() 缩短值:

TextBlock.Text = Math.Round(Slider.Value, [Number of Decimals]).ToString()

问候克里斯

于 2012-04-19T09:42:51.693 回答
0

您必须为滑块创建一个 valuechanged 事件(类似这样)

private void ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{

}

然后在那种情况下,您可以设置文本框的文本 - >

textbox1.Text = silder1.Value.ToString();

每次滑块更改时,事件都会触发,因此文本框也会更改

希望这可以帮助,

巴特

于 2012-04-19T09:45:28.907 回答
0

'Bart Teunissen' 的答案非常好,但只需添加一个简单的检查 OldValue 是否可用,它就会完美运行。

private void slider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
   if(slider.OldValue != null)
   {
      textbox1.Text = silder1.Value.ToString();
   }
}

希望这有帮助。

于 2015-11-20T10:58:06.983 回答