2010-06-03 58 views
0

我在WPF中使用滑块控件来显示文件已被读取多少,并控制从哪里读取文件。基本的WPF滑块问题

滑块将其值绑定到int ProgressValue。我使用计时器查看当前读取百分比并适当设置ProgressValue。滑块移动到所需的位置。随着更多文件被读取,滑块向右移动。

但是,我如何检测到用户点击了滑块并正在移动它,所以我可以查找我的文件到所需的偏移量?我尝试将处理程序添加到MouseLeftButtonDown,DragEnter,DragLeave和DragOver,但是当我单击并拖动滑块时,它们不会被调用。这是当前滑块的XAML:

<Slider x:Name="sliderProgress" TickPlacement="BottomRight" TickFrequency="1000" Minimum="0" Maximum="1000" Value="{Binding ProgressValue1000}" Style="{DynamicResource SliderStyle1}" HorizontalAlignment="Left" Width="478" MouseLeftButtonDown="onSliderLeftButtonDown" /> 

回答

1

你必须为了得到滑块的当前值,当用户四处移动它添加处理程序ValueChanged事件。那么您可以使用事件的e.NewValue参数来查找滑块的新值。

0

为什么不能使用绑定属性'ProgressValue'?用户所做的更改已准备好在该属性中进行,因为默认情况下任何UserEditable控件都会绑定到TwoWay,并在其属性更改时更新源。

一旦用户更改滑块的值,更改将传播到绑定属性“ProgressValue”。现在你可以使用这个属性来查找你的文件。